以下は、データフレームとプロットの簡単な例のコードです。条件付きでバーを色付けする方法が不思議です。私はscale_fill_manual
をよく知っていますが、手動でバーの色を付けることができますが、"Satisfied"
の2016
ファセットは、"Satisfied"
の2015
のパーセンテージより低いパーセンテージであれば違う色にすることをお勧めします。おそらく赤い警告の境界線か、オレンジのような別の色(例のように)。条件付きでGgplot2のバーを表示
これは最良の例ではありませんが、年を上回るトップボックススコアのプロットがあれば、バーが一定の割合を下回った場合にバーの色を変更すると便利です。私は"colour = ifelse(Perc < 60, "orange", "green"
の組み合わせで遊んでみましたが、動作させることができませんでした。私はifelse
ステートメントをどのように構造化するのか、ggplotコードのどこに配置するのかはわかりません。
Year<-c(2015, 2015, 2015, 2015, 2015, 2016, 2016, 2016, 2016, 2016)
Service<-c("Satisfied", "Satisfied", "Satisfied", "Dissatisfied", "Dissatisfied",
"Satisfied", "Satisfied", "Dissatisfied", "Dissatisfied", "Dissatisfied")
df <- data.frame(Year, Service)
library(dplyr)
df.prop <- df %>%
count(Year, Service) %>%
mutate(Perc = prop.table(n))
library(ggplot2)
ggplot(df.prop, aes(x = Service, y = Perc, fill = Service)) +
geom_bar(stat = "identity", position = "dodge") +
geom_text(aes(label = percent(Perc)), position = position_dodge(width = 1),
vjust = 1.5, size = 3) +
scale_y_continuous(labels = percent) +
facet_grid(~ Year)
おかげで、それは素晴らしい作品。ちょうど1つのフォローアップの質問、私は色の境界を追加することができますが、輪郭の代わりにオレンジ色に実際のバーの色をどのように変更するのですか? – Mike
@Mike私の編集された答えを参照してください.. – beetroot