ggplot图例未按预期显示

时间:2017-03-09 19:32:17

标签: r ggplot2

我在定义图例时面临问题。这是我正在使用的代码。我检查了除了这个论坛之外的各种ggplot2教程和文档,以找到解决问题的线索。请告诉我这里做错了什么?

5

1 个答案:

答案 0 :(得分:1)

您应该将数据合并到一个数据框中。 E.g:

df_pred <- data.frame(cbind(xdata=COMPD1$xdata, A=pred1, B=pred2, C=pred3, D=pred4, necafT=pred5))
df_pred <- tidyr::gather(df_pred, -xdata,key="var", value="ydata")
df_real <- tidyr::gather(COMPD1,-xdata,key="var", value="ydata")
df <- merge(df_pred, df_real, by=c("var", "xdata"), suffixes=c("_pred", "_real"))

ggplot(df) + geom_point(aes(y=ydata_real, x=xdata,color=var, shape=var)) + 
   theme(legend.title = element_text(colour="blue", size=10, face="bold"),
    legend.position="bottom",panel.background = element_rect(colour = "black", size=1),
    plot.title = element_text(hjust = 0),
    axis.title = element_text(face="bold", color="#966666", size=14),
    axis.text.x = element_text(face="bold", color="#666666", size=12),
    axis.text.y = element_text(face="bold", color="#666666", size=12)) +
    geom_line(aes(y=ydata_pred,x=xdata,color=var))