我是编程和编码新手,正在尝试在 Google 课程中学习 R。
他们给出了几个使用 ggplot 函数进行视觉效果的示例,但他们以两种方式使用了 aes()。
第一的:
ggplot(data=palmerpenguins) + geom_point(mapping = aes(x = bill_length_mm,y = body_mass_g)) aes() 函数位于 geom_point() 函数内部。
然后他们显示: ggplot(data, aes(x=distance, y= dep_delay, color=carrier, size=air_time, shape = Carrier)) + geom_point()
现在 aes() 函数位于 ggplot() 函数中,它们在其中指定数据集。
切换的原因是什么?看起来 aes() 可以放在任何一个地方。这是真的?对于像编码这样如此具体的事情,令人困惑的是为什么你可以用任何一种方式来做。任何解释将不胜感激。谢谢
如果你只有一层,那真的没关系。每个后来的(geom)都可以有它自己的一组映射。如果将其添加到ggplot()调用中,则如果后者未指定它自己的映射,则将使用该“默认”映射。您可以实际添加aes()外部ggplot()和geom_调用,这也将按默认值运行。都有一样的
ggplot(data=penguins) +
geom_point(mapping = aes(x = bill_length_mm, y = body_mass_g))
ggplot(penguins, aes(x = bill_length_mm, y = body_mass_g)) +
geom_point()
ggplot(penguins) +
aes(x = bill_length_mm, y = body_mass_g) +
geom_point()
Run Code Online (Sandbox Code Playgroud)
这是一个具有不同映射的两个不同层的示例
ggplot(penguins) +
aes(x=island, y=bill_length_mm) +
geom_boxplot() +
geom_jitter(aes(color=sex))
Run Code Online (Sandbox Code Playgroud)
请注意,颜色稍后仅应用于抖动,而不应用于箱线图图层。