Ggplot2 プロットで stat=”identity” を使用する場合
ggplot2 でgeom_bar()関数を使用して棒グラフを作成する一般的な方法は 2 つあります。
方法 1: geom_bar() を使用する
ggplot(df, aes(x)) + geom_bar()
デフォルトでは、 geom_bar() は変数 x のそれぞれの一意の値の出現を単純にカウントし、バーを使用してカウントを表示します。
方法 2: geom_bar(stat=”identity”) を使用する
ggplot(df, aes(x, y)) +
geom_bar(stat=" identity ")
geom_bar()にstat=”identity”引数を指定すると、変数 x でグループ化された変数 y の合計を計算し、バーを使用して合計を表示するように R に指示することになります。
次の例では、さまざまなチームのバスケットボール選手が獲得したポイントを示す R の次のデータ フレームを使用して、これら 2 つの方法の違いを示します。
#create data frame df <- data. frame (team=rep(c(' A ', ' B ', ' C '), each= 4 ), points=c(3, 5, 5, 6, 5, 7, 7, 8, 9, 9, 9, 8)) #view data frame df team points 1 to 3 2 to 5 3 to 5 4 to 6 5 B 5 6 B 7 7 B 7 8 B 8 9 C 9 10 C 9 11 C 9 12 C 8
例 1: geom_bar() の使用
次のコードは、 geom_bar()関数を使用して、チーム列の各一意の値の数を表示する棒グラフを作成する方法を示しています。
library (ggplot2) #create bar chart to visualize occurrence of each unique value in team column ggplot(df, aes(team)) + geom_bar()
X 軸にはチーム列の一意の値が表示され、Y 軸には各一意の値が発生した回数が表示されます。
それぞれの一意の値が 4 回出現するため、プロット内の各バーの高さは 4 になります。
例 2: geom_bar(stat=”identity”) の使用
次のコードは、 geom_bar()関数をstat=”identity”引数とともに使用して、チームごとにグループ化されたポイント列の値の合計を表示する棒グラフを作成する方法を示しています。
library (ggplot2) #create bar chart to visualize sum of points, grouped by team ggplot(df, aes(team, points)) + geom_bar(stat=" identity ")
X 軸にはチーム列の一意の値が表示され、Y 軸には各チームのポイント列の値の合計が表示されます。
例えば:
- チームAのポイントの合計は 19 です。
- チームBの合計ポイントは 27 です。
- チームCの合計ポイントは 35 です。
geom_bar()関数でstat=”identity”を使用すると、データ フレーム内の特定の変数の値の合計を数ではなく表示できます。
注: stat=”identity” が正しく機能するには、 aes()引数に x 変数と ay 変数の両方を指定する必要があります。
追加リソース
次のチュートリアルでは、ggplot2 で他の一般的なタスクを実行する方法を説明します。
ggplot2でバー間のスペースを調整する方法
ggplot2 のプロットから NA を削除する方法
ggplot2の積み上げ棒グラフで棒の色を変更する方法