Featured image of post ggplot2 Layer层 (一) 单独的几何层

ggplot2 Layer层 (一) 单独的几何层

ggplot2 单独的几何层

1. 常见图层绘制

话不多说,咱先上一段代码,看图来认识各种几何图层:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
df <- data.frame(
  x = c(3, 1, 5), 
  y = c(2, 4, 6), 
  label = c("a","b","c")
)
p <- ggplot(df, aes(x, y, label = label)) + 
  labs(x = NULL, y = NULL) + # Hide axis label
  theme(plot.title = element_text(size = 12)) # Shrink plot title
p + geom_point() + ggtitle("point")
p + geom_text() + ggtitle("text")
p + geom_bar(stat = "identity") + ggtitle("bar")
p + geom_tile() + ggtitle("raster")
p + geom_line() + ggtitle("line")
p + geom_area() + ggtitle("area")
p + geom_path() + ggtitle("path")
p + geom_polygon() + ggtitle("polygon")

geom_point

geom_text

geom_bar

geom_tile

geom_line

geom_area

geom_path

geom_polygon

上面我们通过代码绘制了八幅比较常见的图层,它们的意义分别如下:

  • geom_point():在之前的章节中我们已经多次见到这个图层——散点图。该图层主要将数据映射到二维的平面上。
  • geom_text():该图层对于标注图像有帮助。它能单独的用于散点图,也可以和其他图层搭配使用。
  • geom_bar():该图层可以绘制条形图。值得注意的是在上面代码中我们加入了**stat=“identity”**这个参数。原因是单独使用geom_bar()的话只能传入一个变量,换句话说,横坐标为传入的变量,纵坐标为该变量的个数。如果我们要传入两个变量,不加入这个参数,会出现以下提示:

error.png

  • geom_tile():如图所示,该图层绘制了矩形。与它相似的图层还有geom_rect()geom_raster()。不同的是,geom_rect包含的参数里面有矩形的四个顶点xminyminxmaxymax。geom_tile包含了矩形的中心以及它的尺寸,即xywidthheightgeom_raster用于快速高效地生成相同大小的矩形。

geom_raster()

  • geom_lne():用于生成线图。和它相似的还有geom_path(),不同的是,前者按照从左到右的顺序连接数据点,而后者则是按照数据出现的顺序进行连接。
  • geom_area():该函数能够绘制区域图。简单来说,也就是描绘了“数据下方的区域”。想想微积分中的积分区域就能够理解了。
  • geom_polygon():ggplot2中最强大和复杂的图层之一,后续会有更详细的介绍。

值得注意的是,以上提到的所有图层都支持color和size参数,对于有填充的图形,例如条形图,还支持fill参数。以上只是简单介绍了最基本的图层。更多用法请参考文档。下一节我们会介绍群体几何图层(Collective geoms)。

欢迎关注我的公众号和小红书呀~

微信公众号 小红书
Wechat Xiaohongshu