箱ひげ図(boxplot)

Rの標準グラフィックスを使った箱髭図の作り方です。

データ準備

まずは箱ひげ図のデータ準備としてRに組み込まれているirisを使います。

 >  Rに標準で組み込まれてるデモデータのirisを活用
 >  d <- iris
 >  head(d)
     Sepal.Length Sepal.Width Petal.Length Petal.Width Species
   1          5.1         3.5          1.4         0.2  setosa
   2          4.9         3.0          1.4         0.2  setosa
   3          4.7         3.2          1.3         0.2  setosa
   4          4.6         3.1          1.5         0.2  setosa
   5          5.0         3.6          1.4         0.2  setosa
   6          5.4         3.9          1.7         0.4  setosa 

箱ひげ図作成

boxplot(x = d$Sepal.Length)

箱ひげ図の見方

箱髭図では最小値と最大値を両端として挟むことが基本ですが、Rのグラフィックスでは極値を超えた部分を点で表記して外れ値として扱っています。このヒゲの長さや各点の位置でデータの構造を把握することができます。

タイトルやラベル、色

par(mfrow = c(1,2))
 boxplot(x = d$Sepal.Length, main = "boxplot", xlab = "length", ylab = "Sepal.Length")
 boxplot(x = d$Sepal.Length, main = "boxplot", xlab = "length", ylab = "Sepal.Length", col = 'red')

複数の箱髭図を作成①

書き方がちょっと変わっていますが、指標と分析したいファクター項目で波線を挟む事でファクターの要素毎の分析が可能です。

boxplot(
   Sepal.Length ~ Species,
   data = d,
   main = "compare boxplot",
   col = c("pink","lightgreen" ,"lightblue")
 )

複数の箱髭図を作成②

以下のように行列データの記述で変数毎の比較をすることができます。

boxplot(
   d[,1:4],
   main = "compare boxplot",
   col = c("pink","lightgreen" ,"lightblue","purple")
 )