2016-07-13 32 views
2

我有一個情節一樣 enter image description here集Legend採用ggplot

使用ggplot,我怎麼可以設置有兩個標籤的傳說而已,即紅色線,名字說「預測區間」和藍線名稱爲「擬合線」

我用以下R線這個

dfs <- data.frame("x"=1:50,"fit" = rnorm(50,30,4),"upper"=rnorm(50,30,4)+15, "lower"=rnorm(50,30,4)-15) 
df_melt <- reshape2::melt(dfs,id="x") 
g <- ggplot(df_melt,aes(x=x,y=value,colour=variable)) + geom_line(linetype=5) 
g <- g + scale_colour_manual(values=c("blue","red","red")) 
g <- g + theme_grey(base_size = 16) + theme(axis.text=element_text(colour = "black",size = 12)) 
g 

回答

4

可以簡單地用2個值(「預測的時間間隔」或「配合線」)

添加新列

enter image description here

# Add a new group column 
df_melt$group[df_melt$variable == "fit"] <- "fit line" 
df_melt$group[df_melt$variable != "fit"] <- "prediction intervals" 

# don't forget `group = variable` 
g <- ggplot(df_melt, aes(x = x, y = value, colour = group, group = variable)) + 
geom_line(linetype=5) 
g <- g + scale_colour_manual(values = c("blue" ,"red", "red")) 
g <- g + theme_grey(base_size = 16) + 
theme(axis.text = element_text(colour = "black", size = 12)) 
g