【问题标题】:How do I use ggplot2 to manually assign hexadecimal colors to each data point in a plot or bar graph?如何使用 ggplot2 手动为绘图或条形图中的每个数据点分配十六进制颜色?
【发布时间】:2013-10-09 04:53:44
【问题描述】:

我有一个数据集,其中一个变量是一个包含十六进制字符的因子数组(例如“#00FF00”)。我想做的一件事是创建一个组合所有不同颜色的条形图。

我尝试过使用

cg<-ggplot(my.data,aes(x=factor(1),fill=as.character(my.color)))

紧随其后

cg+geom_bar()

但绘制的唯一颜色似乎是默认比例的颜色。我试过省略代码的 as.character() 部分,但这并没有什么不同。使用 geom_point() 制作二维图时,我也遇到了同样的问题。

如果我尝试类似的东西

plot(my.data$var1,my.data$var2,col=as.character(my.color))

颜色是按照我想要的方式绘制的,尽管图形看起来不如 ggplot2 中的漂亮。

有什么明显的我遗漏了,还是超出了 ggplot2 的范围?

【问题讨论】:

    标签: r colors plot ggplot2


    【解决方案1】:

    您应该添加scale_fill_identity() 以使用颜色名称作为实际颜色。

    ggplot(my.data,aes(x=factor(1),fill=my.color)) +
       geom_bar()+
       scale_fill_identity()
    

    【讨论】:

      猜你喜欢
      • 2015-05-19
      • 2015-12-26
      • 2019-03-21
      • 2019-03-23
      • 2011-02-04
      • 1970-01-01
      • 1970-01-01
      • 2012-05-01
      • 2015-11-13
      相关资源
      最近更新 更多