0
亞組我想繪製以下數據集:傳說與GGPLOT2
data<-list()
data$Year<-c(rep(1995,4),rep(2005,4))
data$Name<-as.factor(c("name1","name2","name3","name4","name1","name2","name3","name4"))
data$species<-as.factor(c("cat","cat","dog","dog","cat","cat","dog","dog"))
data$Value<-c(1,2,3,4,5,6,7,8)
data<-as.data.frame(data)
這是我所希望的描繪
p<-ggplot(data, aes(x=Year, y=Value,fill=Name, colour=Name,linetype=species,shape=species))
p<-p+geom_point()
p<-p+geom_line()
我想不同的傳說不過。首先,圖例應該包含每個'名稱'的正確符號(顏色,線型和形狀)的一個條目。我可以通過執行以下操作做到這一點(的線型不完全匹配,不好意思):
#Plot with better legend
gg_color_hue <- function(n) {
hues = seq(15, 375, length=n+1)
hcl(h=hues, l=65, c=100)[1:n]
}
p2<-ggplot(data, aes(x=Year, y=Value,fill=Name, colour=Name,linetype=Name,shape=Name))
p2<-p2+scale_linetype_manual(values=c(1,1,2,2),breaks=levels(data$Name),name="test")
p2<-p2+scale_shape_manual(values=c(16,16,17,17),breaks=levels(data$Name),name="test")
p2<-p2+scale_colour_manual(values=gg_color_hue(4),breaks=levels(data$Name),name="test")
p2<-p2+scale_fill_manual(values=gg_color_hue(4),breaks=levels(data$Name),name="test")
p2<-p2+geom_point(show_guide=T)
p2<-p2+geom_line(show_guide=T)
但是現在有貓,狗沒有什麼區別了。因此,我想有傳說中的字幕(或基本上是兩種傳說): 事情是這樣的:
cats
symbol(name1) name1
symbol(name2) name2
dogs
symbol(name3) name3
symbol(name4) name4
有人可以幫我在這?謝謝。
也許你可以addapt [該解決方案(http://stackoverflow.com/questions/15462203/modify-legend-in-facetted-plot- ggplot2/15463216#15463216) – 2013-03-27 11:29:32
這樣做,非常感謝。 – user2215127 2013-03-27 12:48:22