【问题标题】:manually changing colors for ggplot手动更改 ggplot 的颜色
【发布时间】:2018-04-27 18:27:42
【问题描述】:

我正在尝试手动更改 ggplot 中的颜色,以便将我的箱线图颜色编码为组(例如 Qilai 和 Nagigi 相同的颜色)。我运行了以下代码,它工作得很好。

B1 <- ggplot(tissue_A, aes(x=Site, y=d15N.permil)) + geom_boxplot() + 
  geom_signif(comparisons = list(c("Suva", "Nagigi")), y_position = 14.3, map_signif_level=TRUE) +  
  geom_signif(comparisons=list(c("Suva", "Qilai")),
  y_position = 13.8, tip_length = 0.03, vjust=0.2, map_signif_level=TRUE)

然后我尝试稍后重新运行它,除了颜色之外一切正常。我更改了代码以使用以下代码将事物分开:

B1 + labs(title = "T. jarbua Tissue", y = "δ15 permil") + scale_fill_manual(values = c("yellow","yellow", "red","red"), name = "Site")

ggplot(tissue_A, aes(x=Site, y=d15N.permil)) + geom_boxplot() + 
  geom_signif(comparisons = list(c("Suva", "Nagigi")), y_position = 14.3, map_signif_level=TRUE) +  geom_signif(comparisons=list(c("Suva", "Qilai")), y_position = 13.8, tip_length = 0.03, vjust=0.2, map_signif_level=TRUE) + scale_fill_manual(values = c("yellow","yellow", "red","red"), name = "Site")

除了颜色有效外,我仍然拥有一切。我的 R 工作室是最新的,我已经尝试重新启动。有什么可能会阻止我的代码运行吗?

谢谢!

【问题讨论】:

    标签: r ggplot2 colors


    【解决方案1】:

    我相信您在调用aes 时缺少fill 参数。参见this tutorial:的以下示例

    library(ggplot2)
    
    ToothGrowth$dose <- as.factor(ToothGrowth$dose)
    bp<-ggplot(ToothGrowth, aes(x=dose, y=len, fill=dose)) +
      geom_boxplot()
    bp
    

    生成以下图,按剂量着色。

    调用aes时应加fill=Site

    【讨论】:

    • 没问题。考虑 accepting the answer 如果它对您有所帮助,以便人们知道问题已解决。
    猜你喜欢
    • 1970-01-01
    • 2019-04-17
    • 2013-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-07
    • 1970-01-01
    • 2021-02-08
    相关资源
    最近更新 更多