ggplot2 の基本的な考え方(レイヤー構造)を理解するaes() による変数のマッピングを理解するggplot2
は,Rで最も広く使われているグラフ作成パッケージです。
今日は R に最初から入っているデータセット iris
を使います。
## 'data.frame': 150 obs. of 5 variables:
## $ Sepal.Length: num 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
## $ Sepal.Width : num 3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...
## $ Petal.Length: num 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...
## $ Petal.Width : num 0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...
## $ Species : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1 ...
## Sepal.Length Sepal.Width Petal.Length Petal.Width
## Min. :4.300 Min. :2.000 Min. :1.000 Min. :0.100
## 1st Qu.:5.100 1st Qu.:2.800 1st Qu.:1.600 1st Qu.:0.300
## Median :5.800 Median :3.000 Median :4.350 Median :1.300
## Mean :5.843 Mean :3.057 Mean :3.758 Mean :1.199
## 3rd Qu.:6.400 3rd Qu.:3.300 3rd Qu.:5.100 3rd Qu.:1.800
## Max. :7.900 Max. :4.400 Max. :6.900 Max. :2.500
## Species
## setosa :50
## versicolor:50
## virginica :50
##
##
##
iris データの説明:アヤメ(花)の測定データ -
Sepal.Length:がく片の長さ -
Sepal.Width:がく片の幅 -
Petal.Length:花びらの長さ -
Petal.Width:花びらの幅 - Species:種(setosa
/ versicolor / virginica)
種ごとのデータ件数を棒グラフで表示します。
グループ間の分布を比較するのに便利です。
ggplot(data = iris, aes(x = Sepal.Length, y = Petal.Length, color = Species)) +
geom_point() +
labs(
title = "がく片の長さと花びらの長さの関係",
x = "がく片の長さ (cm)",
y = "花びらの長さ (cm)",
color = "種"
)| 引数 | 役割 | 例 |
|---|---|---|
x |
x軸の変数 | x = Sepal.Length |
y |
y軸の変数 | y = Petal.Length |
color |
色(線・点) | color = Species |
fill |
塗りつぶし色 | fill = Species |
size |
点・線の大きさ | size = Petal.Width |
shape |
点の形 | shape = Species |
iris データを使って,Petal.Length(x軸)と
Petal.Width(y軸)の 散布図を作成し,Species
で色分けしてください。
Petal.Width
のヒストグラムを作成し,適切なタイトルと軸ラベルを付けてください。
ggplot2 はレイヤーを重ねてグラフを作るggplot() + aes() + geom_xxx() が基本の構造geom_point()),ヒストグラム(geom_histogram()),棒グラフ(geom_bar()),箱ひげ図(geom_boxplot())を作れるようになったlabs() でタイトル・軸ラベルを追加できる