ggplot传奇没有显示出来

时间:2018-02-24 12:17:31

标签: r ggplot2

以下代码不显示图例:

library(ggplot2)
g=ggplot() 
g=g+geom_line(aes(x=1:10,y=1:10),color="red",size=0.2)
g=g+geom_line(aes(x=5:12,y=15:22),color="green",size=0.2)
g=g+theme(legend.position = c(0, 1),legend.justification = c(0, 1))
g=g+scale_color_manual(values = c("red","green"))
g

我在互联网上搜索了答案但没有成功。请注意,我不能使用ggplot(aes(...))或使用数据帧,因为这两行具有不同的x坐标。

2 个答案:

答案 0 :(得分:2)

您需要在aes来电中映射颜色 - 现在,没有要显示的色阶。

,例如,考虑这个

library(ggplot2)
colors <- c("L1" = "red", "L2" = "green")
g=ggplot() 
g=g+geom_line(aes(x=1:10,y=1:10, color="L1"),,size=0.2)
g=g+geom_line(aes(x=5:12,y=15:22, color="L2"),size=0.2)
g=g+theme(legend.position = c(0, 1),legend.justification = c(0, 1))
g=g+scale_color_manual(values = colors)
g

enter image description here

答案 1 :(得分:1)

为此,您应该将color放在aes

library(ggplot2)
g=ggplot() 
g=g+geom_line(aes(x=1:10,y=1:10,color="red"),size=0.2)
g=g+geom_line(aes(x=5:12,y=15:22,color="green"),size=0.2)
g=g+theme(legend.position = c(0, 1),legend.justification = c(0, 1))
g