【问题标题】:R ggplot2 geom_line specifying colour form a vector returns unknown colorR ggplot2 geom_line 指定颜色形式的向量返回未知颜色
【发布时间】:2020-07-23 13:34:58
【问题描述】:

我有这段代码

colors = c("score" = "#26648E")
plot = ggplot() + geom_line(data = DT, aes(x = position, y = score), stat = "summary_bin", binwidth = 1000, color = "score", group = 1) + scale_color_manual(name ="", values = colors) + facet_wrap(~chromosome, scales = "free_x")
ttle = paste0("referee score") 
plot = plot + labs(
  title = ttle) #+ theme(plot.title = element_markdown(lineheight = 1.5, size = 12), legend.text = element_markdown(size = 14))
p = plot +xlab( "position") + ylab("")
p

返回

错误:未知颜色名称:分数

这不是我第一次在矢量中预先定义颜色,而且它一直有效。我不明白为什么在这种特定情况下它不起作用。我知道我可以直接在 geom_line 中定义颜色,我只是想了解为什么代码不起作用。比如我有这段代码

colors = c("heterozygosity" = "#8b0000", "coverage" = "#00919c")
ggplot() + 
  geom_line(data = CT, aes(x = end, y = 3*(normalize(heterozygosity)), color = "heterozygosity")) + 
  geom_line(data = COV, aes(x = end, y = 2*(normalize(coverage)), color = "coverage")) + 
  scale_color_manual(name ="", values = colors) + 
  facet_wrap(~CHROM, scales = "free_x") 

这不会产生错误并给出所需的输出。

感谢您的任何见解

【问题讨论】:

  • 请注意,在您的第二个示例中,color 在每个几何图层中 inside aes()。首先它在aes() 之外,这导致了问题。

标签: r ggplot2 colors


【解决方案1】:

颜色属于审美范畴,请在指定 y 轴后尝试放置它。如下所示。它应该工作

颜色 = c("score" = "#26648E") plot = ggplot() + geom_line(data = DT, aes(x = position, y = score, color = "score") stat = "summary_bin", binwidth = 1000, group = 1) + scale_color_manual(name =”,值=颜色)+ facet_wrap(~染色体,鳞片=“free_x”) ttle = paste0("裁判分数") 情节=情节+实验室( title = ttle) #+ 主题(plot.title = element_markdown(lineheight = 1.5, size = 12), legend.text = element_markdown(size = 14)) p = plot +xlab("位置") + ylab("") p

【讨论】:

  • 欢迎亚历山德罗,我们都在学习......不要被吓倒
【解决方案2】:

谢谢大家,

这确实很尴尬,但你当然是对的,这只是范围的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-29
    • 2015-08-02
    • 1970-01-01
    • 1970-01-01
    • 2016-05-29
    • 2017-12-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多