当我在这样的颜色中使用颜色时
ggplot(data=olympia,aes(x=year)) + geom_line(aes(y=gold,colour="red")) + geom_line(aes(y=silver,colour="blue"))
它不起作用。
如果我使用颜色参数,它会显示正确的颜色红色和蓝色
ggplot(data=olympia,aes(x=year)) + geom_line(aes(y=gold),colour="red") + geom_line(aes(y=silver),colour="blue")
有什么不同? 什么是错?
数据帧
year gold silver
1 2002 12 16
2 2006 11 12
3 2010 10 13
4 2014 8 3
答案 0 :(得分:4)
不同之处在于,当您在aes
中提供颜色参数时,它会将其视为一个因素,并尝试将每个级别的因子映射到一种颜色(就像您给出的那样{{1} 1}} - 它不会将它们视为字面颜色。)
相反,当您将颜色直接赋予c("USA", "USA", "Russia", "Russia")
时,它会将其作为实际颜色。您可以在geom_line
的文档中看到这一点:
geom_line
注意“您要设置的值,而不是地图”。