【发布时间】:2021-12-21 10:17:15
【问题描述】:
我想在同一个图中用两个不同数据集的图例制作一个图
我第一次尝试这个:
df1 = data.frame(c11 = c(1:5), c12 = c(1:5))
df2 = data.frame(c21 = c(1:5), c22 = (c(1:5))^0.5)
ggplot() + geom_line(data=df1, aes(x=c11, y = c12), color= "red") +
geom_line(data=df2, aes(x=c21,y=c22), color = "blue")
使用这个我得到了我想要的颜色,但没有图例
然后我尝试了这个:
ggplot() + geom_line(data=df1, aes(x=c11, y = c12, color= "DF1")) +
geom_line(data=df2, aes(x=c21,y=c22, color= "DF2"))
使用这个我得到一个图例,但不是正确的颜色。然后我尝试使用
scale_color_manual() 但我不知道如何为 2 个不同的数据集形成参数
我知道有办法,但我似乎找不到 任何帮助都非常感谢
【问题讨论】:
-
你试过
scale_colour_manual(values = c("red", "blue"))吗? -
谢谢,我试过了,但由于某种原因,我得到了一个错误,但现在我复制了它工作的代码。也许我写错了什么。非常感谢
-
为了获得图例,您必须将 2 个数据集合并为一个,然后将颜色定义为变量。查看类似问题here
-
将 data.frames 与相似的列组合起来更简洁,但并不是绝对必要的。