空间地理数据可视化之 mapview 包

2021-10-22 16:27:55 浏览数 (1)

点击下方公众号,回复资料分享,收获惊喜

前言

本期 R 可视化将介绍 mapview 包的基本内容。这是《Geospatial Health Data》[1]一书中关于空间地理数据可视化 中所提到的最后一个 R 包,关于 mapview 包的更多内容,可进入mapview官网[2]探索学习。

1. 安装

  • CRAN 下载:
代码语言:javascript复制
install.packages("mapview")
  • 要安装开发版本的 mapview,可以通过 remotes 包安装:
代码语言:javascript复制
remotes::install_github("r-spatial/mapview")

2. 基本画图设置

  • mapview 包允许快速创建交互式可视化地图,以研究数据中的空间几何特征和变量。例如,我们可以创建一个 1974 年北卡罗来纳州婴儿猝死地图,只需使用mapview()函数,参数为地图对象和我们想要显示的变量(zcol = "SID74")。

例子

代码语言:javascript复制
library(mapview)
mapview(map, zcol = "SID74") #

1974 年北卡罗来纳州婴儿猝死地图

这个地图是交互式的,通过点击每个县,我们可以看到弹出的数据信息。

  • mapview 对于快速地检查空间数据是非常方便的,而且创建的地图也可以通过添加图例和背景地图等元素进行定制。例如,我们可以用背景地图 "CartoDB.DarkMatter "RColorBrewer 软件包中的调色板 "YlOrRd " 创建一个地图。

例子

代码语言:javascript复制
library(RColorBrewer)
pal <- colorRampPalette(brewer.pal(9, "YlOrRd"))
mapview(map,
        zcol = "SID74",
        map.types = "CartoDB.DarkMatter", #添加背景地图
        col.regions = pal #设置调色板
)

设置背景地图和调色板后的婴儿猝死地图

  • 还可使用 sync() 函数对用 mapviewleaflet 创建的多个同步地图进行查看。例如,我们可以先用 mapview() 创建变量 SID74SID79 的地图,然后将这些地图作为 sync() 函数的参数传递,创建具有同步缩放和平移功能的 1974 年和 1979 年婴儿猝死地图。

例子

代码语言:javascript复制
library(leafsync)
m74 <- mapview(map, zcol = "SID74")
m79 <- mapview(map, zcol = "SID79")
m <- sync(m74, m79)
m

1974 年和 1979 年婴儿猝死地图

3. 保存

我们可以用与用 leaflet 创建的地图相同的方式保存用 mapview 创建的地图(使用 saveWidget()webshot() )。另外,也可以用 mapshot() 函数将地图保存为 HTML 文件、PDF 文件、PNGJPEG 图片。

小编有话说

  • 本篇介绍了 《Geospatial Health Data》 一书中 mapview 包和函数的基本使用方法,更多精彩内容可在其官网查看。
  • 本篇是空间地理数据可视化系列的第五期,主要由 林华师 制作。本系列的宗旨是带你系统学习如何使用 R 对空间地理数据进行可视化。

参考资料

[1]

《Geospatial Health Data》: https://www.paulamoraga.com/book-geospatial/sec-spatialdataandCRS.html

[2]

mapview官网: https://r-spatial.github.io/mapview/

推荐: 可以保存以下照片,在 b 站扫该二维码,或者 b 站搜索【庄闪闪】观看 Rmarkdown 系列的视频教程。Rmarkdown 视频新增两节视频(写轮眼幻灯片制作)需要视频内的文档,可在公众号回复【rmarkdown

可视化推文推荐

R可视乎|空间地理数据可视化(1)

空间地理数据可视化之 ggplot2 包及其拓展

空间地理数据可视化之 tmap 包及其拓展

0 人点赞