3

我有一个数据集,其中一个变量是一个带有十六进制字符的因子数组(例如'#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的范围?

4

1 回答 1

10

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

ggplot(my.data,aes(x=factor(1),fill=my.color)) +
   geom_bar()+
   scale_fill_identity()
于 2013-10-09T05:19:11.253 回答