1. ホーム
  2. r

[解決済み] r で ggplot2 を使って geom_bar で棒グラフの色を変更する

2022-03-05 12:22:27

質問

データフレームを棒グラフにするために、以下のようなものがあります。

c1 <- c(10, 20, 40)
c2 <- c(3, 5, 7)
c3 <- c(1, 1, 1)
df <- data.frame(c1, c2, c3)
ggplot(data=df, aes(x=c1+c2/2, y=c3)) +
  geom_bar(stat="identity", width=c2) +
  scale_fill_manual(values=c("#FF6666"))

結局グレーのバーしかないんですけど。 棒グラフの灰色の棒

バーの色を変えたいのですが。 すでに、以下のサイトからさまざまなscale_fill_manualを試してみました。 http://www.cookbook-r.com/Graphs/Colors_(ggplot2)/ が、まだグレーのバーが表示されています。

ありがとうございました。

解決方法は?

すべてのバーを同じ色にしたい場合 ( fill の中に追加することができます。 geom_bar .

ggplot(data=df, aes(x=c1+c2/2, y=c3)) + 
geom_bar(stat="identity", width=c2, fill = "#FF6666")

追加 fill = the_name_of_your_var 内部 aes 変数によって色を変えることができます。

c4 = c("A", "B", "C")
df = cbind(df, c4)
ggplot(data=df, aes(x=c1+c2/2, y=c3, fill = c4)) + 
geom_bar(stat="identity", width=c2)

使用方法 scale_fill_manual() 色の変更を手動で行う場合。

ggplot(data=df, aes(x=c1+c2/2, y=c3, fill = c4)) + 
geom_bar(stat="identity", width=c2) + 
scale_fill_manual("legend", values = c("A" = "black", "B" = "orange", "C" = "blue"))