我想用圖例自動在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
。