【发布时间】:2023-02-17 00:03:24
【问题描述】:
我正在尝试使用 R ggplot 显示带有多个数据点的散点图的图例。我累的是这样的:
p1 <- ggplot()+
geom_line(data=df2, aes(y = C, x=time), color = "red") +
geom_line(data=df2,aes(y = TU, x=time), color="steelblue") +
geom_line(data=df2,aes(y = TN, x=time), color="purple") +
geom_line(data=df2,aes(y = CD, x=time), color="green")
p1 <- p1 + legend(x='top',legend=c('C', 'TU', 'TN', 'CD'), fill=c("red","steelblue","purple","green"))
df2 看起来像:
time C TU TN CD
1 3 5 6 7
5 6 7 8 9
9 8 9 10 3
你可以帮帮我吗?
另外,我试过这个
p1 <- p1 + scale_color_manual(name='Compound Name',
breaks=c('C', 'TU', 'TN', 'CD'),
values=c('C'='red', 'TU'='steelblue', 'TN'='purple', 'CD'='green'))
它没有显示图例。我究竟做错了什么?谢谢。
【问题讨论】:
-
我建议您查看几个 ggplot 教程,了解其功能的预期工作方式。它的范例是您通过
aes分配视觉编码,例如颜色。您使用长形数据执行此操作,因此您不会多次使用相同的 geom 以使它们出现多次。如果你没有以预期的方式分配颜色,你就不会得到图例