请注意,这张图在同一个图形中包含了两个几何对象!如果这让你感到兴奋,那么请系好安全带。在下一节中,我们将学习如何在同一张图中放置多个几何对象。
ggplot2 提供了 30 多种几何对象,扩展包还提供了更多(参见 https://www.ggplot2-exts.org 中的示例)。要获得全面的概览,最好的方式是 ggplot2 速查表,你可以在 http://rstudio.com/cheatsheets 找到它。要了解任何单个几何对象的更多信息,请使用帮助:?geom_smooth。
许多几何对象(如 geom_smooth())使用单个几何对象来显示多行数据。对于这些几何对象,你可以将 group 美学映射设置为一个分类变量,从而绘制多个对象。ggplot2 会为分组变量的每个唯一值绘制一个单独的对象。在实践中,每当你将某个美学映射到离散变量时(如 linetype 示例中那样),ggplot2 就会自动为这些几何对象对数据进行分组。依赖这一特性非常方便,因为 group 美学本身不会为几何对象添加图例或区分特征:
ggplot(data = mpg) + geom_smooth(mapping = aes(x = displ, y = hwy)) ggplot(data = mpg) + geom_smooth(mapping = aes(x = displ, y = hwy, group = drv)) ggplot(data = mpg) + geom_smooth( mapping = aes(x = displ, y = hwy, color = drv), show.legend = FALSE )

要在同一张图中显示多个几何对象,可以在 ggplot() 中添加多个 geom 函数:
ggplot(data = mpg) + geom_point(mapping = aes(x = displ, y = hwy)) + geom_smooth(mapping = aes(x = displ, y = hwy))