目次(まとめ)

  • ◾️ Rの "barplot" 関数を使って、棒グラフを描くことができる

  • ◾️ 複数の棒グラフを並べて表示させるには "beside" オプションを使用


Rで棒グラフを描くときには、どの関数を使えばいいですか?

Rでは "barplot" 関数がデフォルトで準備されているので、それを使えば棒グラフを簡単に描くことができます。

Rの "barplot" 関数を使って、棒グラフを描くことができる

いま、以下のような数値配列があるとします。

> num <- c(1.4, 3.2, 4.3, 5.7, 2.4)

棒グラフを描くためには、以下のように実行します。

> barplot(num)

"num" という変数に入っている数字に対応する "棒" が左から順番に並んでいます。

もし、それぞれの数字(棒)に名前があるようであれば、"names" というオプションを追加して、以下のように実行することで、ラベルを表示させることができます。

> barplot(num, names = c("A", "B", "C", "D", "E"))

このグラフ全体に枠を描きたければ、引き続き、以下のように実行すればOKです。

> box()

他にも、いろいろなオプションがあるので、必要に応じて、追加することができます。

オプション説明
col色の指定col = "white"
mainグラフのタイトルmain = "number"
xlabx軸の名前xlab = "student"
ylaby軸の名前ylab = "score"
> barplot(num, names = c("A", "B", "C", "D", "E"), col = "white", main = "number", xlab = "student", ylab = "score")

複数の棒グラフを並べて表示させるには "beside" オプションを使用

ここでは、以下のように "num_1" と "num_2" という2つの数値配列の棒グラフを描くことを考えます。

> num_1 <- c(1.4, 3.2, 4.3, 5.7, 2.4)
> num_2 <- c(4.3, 5.7, 2.4, 1.4, 3.2)

これらの数値配列について、それぞれの要素(棒)を並べて表示させる場合には、"rbind(num_1, num_2)" と "beside = T" を設定して、以下のように実行します。

> barplot(rbind(num_1, num_2), names = c("A", "B", "C", "D", "E"), col = "white", main = "number", xlab = "student", ylab = "score", beside = T)

また、隣り合う棒で、色を変えたければ、以下のように設定すれば、"白" "赤" "白" "赤" ... の順番で棒の色を変えることができます。

> barplot(matrix, names = c("A", "B", "C", "D", "E"), col = c("white", "red"), main = "number", xlab = "student", ylab = "score", beside = T)
B!