前言 上次 R 可视乎主要讲述了《Geospatial Health Data》一书中关于空间地理数据可视化用 R 包制作地图的基础内容,参见(公众号链接)。本篇将继续介绍空间地理数据可视化的 R 包和函数。
众所周知,地图对于传达地理空间信息非常有用,我们将介绍一些简单的例子,展示一些在 R 语言中常用于制图的包,即 ggplot2 、tmap 、leaflet 和 mapview 等。
本篇将主要介绍 ggplot2 包及函数的用法以及它的拓展( gganimate 和 plotly 包)。
1. 基本画图设置 ggplot2是一个基于图形语法来创建图形的包,因此我们可以使用 ggplot() 函数和以下元素创建一个图:
想要可视化的数据;
指定数据的几何形状,如点或条。形状是用 geom_*() 函数指定的,例如,geom_point() 用于表示点,geom_histogram() 用于表示柱状图;
几何对象的美化,如颜色、大小等。其中,aes() 用于将数据中的变量映射为对象的视觉属性;
可选的元素,如标尺、标题、标签、图例和主题等。
我们可以使用 geom_sf() 函数和一个简单特征对象( sf 类)来创建地图。如果可用的数据是 SpatialPolygonsDataFrame 类的空间对象,可以用 sf 包的 st_as_sf() 函数轻松地将其转换为 sf 类的简单特征对象。
例子:创建一个 1974 年北卡罗来纳州婴儿猝死的地图,如下所示(其中 map 数据可在上篇公众号第 4 部分图形文件中找到相关代码):