gpt4 book ai didi

r - ggplot2 中颜色参数和 aes 颜色有什么不同?

转载 作者:行者123 更新时间:2023-12-02 21:33:27 26 4
gpt4 key购买 nike

当我像这样使用 aes 中的颜色时

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

最佳答案

不同之处在于,当您在 aes 中提供颜色参数时,它会将其视为一个因子,并尝试将因子的每个级别映射到颜色(与您提供颜色参数的方式相同)给出了 c("USA", "USA", "Russia", "Russia") - 它不会将它们视为文字颜色)。

相反,当您直接将颜色赋予geom_line时,它会将其视为实际颜色。您可以在 geom_line 的文档中看到这一点:

Usage:

geom_line(mapping = NULL, data = NULL, stat = "identity",
position = "identity", ...)
<snip>

...: other arguments passed on to ‘layer’. This can include
aesthetics whose values you want to set, not map. See ‘layer’
for more details.

注意“您要设置其值,而不是映射”。

关于r - ggplot2 中颜色参数和 aes 颜色有什么不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21886942/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com