以前の質問への回答に続いて、別の質問があります。
データを再形成せずに、別のカテゴリに応じて異なる色で積み上げ棒グラフをプロットすると同時に、 stats="identity" を使用して各積み上げ領域の値を合計するにはどうすればよいですか?
統計 ID は、値を合計するのにうまく機能しますが、積み上げられていない列の場合です。積み重ねられた列では、積み重ねは何らかの形で「乗算」または「縞模様」になります。下の図を参照してください。
いくつかのデータサンプル:
element <- rep("apples", 15)
qty <- c(2, 1, 4, 3, 6, 2, 1, 4, 3, 6, 2, 1, 4, 3, 6)
category1 <- c("Red", "Green", "Red", "Green", "Yellow")
category2 <- c("small","big","big","small","small")
d <- data.frame(element=element, qty=qty, category1=category1, category2=category2)
そのテーブルを与える:
id element qty category1 category2
1 apples 2 Red small
2 apples 1 Green big
3 apples 4 Red big
4 apples 3 Green small
5 apples 6 Yellow small
6 apples 2 Red small
7 apples 1 Green big
8 apples 4 Red big
9 apples 3 Green small
10 apples 6 Yellow small
11 apples 2 Red small
12 apples 1 Green big
13 apples 4 Red big
14 apples 3 Green small
15 apples 6 Yellow small
次に:
ggplot(d, aes(x=category1, y=qty, fill=category2)) + geom_bar(stat="identity")
しかし、グラフは少し乱雑です: 色がグループ化されていません!
なぜこの動作があるのですか?
データを再形成せずに色を正しくグループ化するオプションはまだありますか?