我想用图例自动在ggplot中以灰色显示背景数据。我的目标是要么在图例中包含灰色数据点,要么用手动标题制作第二个图例。但是我没有做到这两者中的任何一个。我的数据格式很长。为多个数据集创建ggplot2图例
require(ggplot2)
xx<-data.frame(observation="all cats",x=1:2,y=1:2)
yy<-data.frame(observation=c("red cats","blue cats"),x=3:4,y=3:4)
g<-ggplot() +
geom_point(aes(x,y, colour=factor(observation)), colour="grey60", size=5, data=xx) +
geom_point(aes(x,y, colour=factor(observation)), size=5, data=yy) +
scale_color_discrete(name = "ltitle")
g
我试图用rbind.data.frame
,这产生了很好的传说合并data.frames,但当时我没能在颜色灰色的背景资料,并保持ggplot颜色在同一时间。
我也意识到,这解决了这个问题:
g<-ggplot(aes(x,y, colour=factor(observation)), colour="grey60", data=xx) +
geom_point(size=5) +
geom_point(aes(x,y, colour=factor(observation)), size=5, data=yy) +
scale_color_discrete(name = "ltitle")
g
但我不能这样做,因为我使用它之前创建一个复杂的空情节的功能,我在其中再加入geom_points
。