ファセットごとに合計 100 になるパーセンテージで、ファセット バープロットを作成しようとしています。group
これに対する解決策は、との組み合わせのよう..density..
です。group
とにかく - と矛盾しているように思えfill
ます。
データ:
test <- data.frame(
test1 = sample(letters[1:2], 100, replace = TRUE),
test2 = sample(letters[3:8], 100, replace = TRUE)
)
これにより、パーセンテージが正しくなります。
ggplot(test, aes(test2)) +
geom_bar(aes(y = ..density.., fill=test2,group=test1)) +
facet_grid(~test1)
ご覧のとおり、バスfill
は上書き
されます。
ただし、以下のコードは尊重しますfill
が、間違ったパーセンテージを示します (グラフ全体の合計は 100 になります) (..density .. を使用):
ggplot(test, aes(test2)) +
geom_bar(aes(y = ..count../sum(..count..), fill=test2)) +
facet_grid(~test1)
関連: 私のこの古い質問:ファセット ggplot 棒グラフの y ラボのパーセンテージ? .
はい、追加のデータを作成することもできますが、これはプレゼンテーション層に属していると思います。実際、これはバグのように感じますか?