【问题标题】:Changing colors in stacked barchart更改堆叠条形图中的颜色
【发布时间】:2023-03-28 08:10:01
【问题描述】:

我需要此条形图的三种颜色为特定颜色。 RET 应该是“chartreuse3”, FiR/FG 应该是海蓝宝石4, RHA 应该是“goldenrod1”。

我已经找到了一些解决这个问题的方法,但是当我尝试实施时,它不起作用。

fall3 <- structure(list(Community = c("First-Year", "First-Year", "First-Year", 
"First-Year", "Upper-Class", "Upper-Class", "First-Year", "First-Year", 
"Upper-Class", "Upper-Class"), Division = c("FiR/FG", "RHA", 
"RHA", "RET", "FiR/FG", "RET", "RET", "RHA", "RHA", 
"FiR/FG"), Count = c(1, 1, 1, 1, 1, 1, 1, 1, 1, 1)), row.names = c(NA, 
-10L), class = c("tbl_df", "tbl", "data.frame"))



gg_color_hue <- function(n) {
  hues = seq(15, 375, length=n+1)
  hcl(h=hues, l=65, c=100)[1:n]
}

#make custom palette

mycols <- gg_color_hue(length(unique(fall3$Division)))
names(mycols) <- unique(fall3$Division)
mycols["RET"] <- 'sienna'
mycols["FiR/FG"] <- 'darkgoldenrod1'
mycols["RHA"] <- 'darkolivegreen3'


stick <- ggplot(fall3, aes(Community))+
  geom_bar(aes(fill = Division))+
 scale_color_manual(values=mycols)

我希望有一个带有适当颜色的条形图。此外,有些东西告诉我我做错了。因为我的图表显示一年级和高年级的事件数量相同,但事实并非如此。

【问题讨论】:

  • scale_color_manual 更改为 scale_fill_manual
  • @sumshyftw 不起作用。
  • 这里要注意的另一件事是,gg_color_hue 函数调用没有做任何事情,因为您继续用不同的颜色名称手动替换它生成的颜色值。

标签: r ggplot2 bar-chart


【解决方案1】:
mycols<- c("RET" = "sienna", "FiR/FG" = "darkgoldenrod1", "RHA" = "darkolivegreen3")
ggplot(fall3, aes(Community, fill = Division))+
  geom_bar() +
  scale_fill_manual(values=mycols)

【讨论】:

  • 顺便说一句,我使用了您代码中的颜色,这些颜色与问题的第一行冲突。调整口味。
猜你喜欢
  • 2017-04-27
  • 1970-01-01
  • 2021-10-06
  • 1970-01-01
  • 2015-07-25
  • 2021-10-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多