使用 R 中的 GADM 数据绘制英国地区

Plotting UK regions using GADM data in R

我想制作一张英国地图,并能够按颜色对区域进行颜色编码。我的数据集中的区域包括东北、东南、西米德兰兹、威尔士、北爱尔兰等

我一直在用gadm数据集,但是这个好像没有这个数据。它要么不够详细且按国家/地区分类,要么过于细化。是否有任何其他我可以下载的数据集,其中包含区域?目前我只制作了地图

library(sp) 

gadm <- readRDS("C:/Users/User/Documents/R_input/gadm36_GBR_2_sp.rds")
plot(gadm)

GADM 数据集的详细信息取决于请求的详细信息级别。尝试 raster 包中的函数 getData

library(raster)
# gadm <- <- getData('GADM', country='GBR', level=2) # the one you have
gadm <- getData('GADM', country='GBR', level=3) # more detailed than yours
plot(gadm)

我认为您要查找的区域可以在国家统计局“行政边界”的“区域”类别下找到。它们仅包含英格兰境内的边界,因此必须单独下载不同的英国国家/地区轮廓并将这两个集合连接在一起。幸运的是,ONS 有一个 GeoJSON API.

这是一个完整的代表:

eng <- rgdal::readOGR(paste0("https://opendata.arcgis.com/datasets/",
                              "8d3a9e6e7bd445e2bdcc26cdf007eac7_4.geojson"))

countries <- rgdal::readOGR(paste0("https://opendata.arcgis.com/datasets/",
                                   "92ebeaf3caa8458ea467ec164baeefa4_0.geojson"))

eng <- sf::st_as_sf(eng)
countries <- sf::st_as_sf(countries)
UK <- countries[-1,] 
names(eng)[3] <- "Region"
names(UK)[3] <- "Region"
UK$objectid <- 10:12
eng <- eng[-2]
UK <- UK[c(1, 3, 9:11)]
UK <- rbind(eng, UK)

ggplot2::ggplot(UK, ggplot2::aes(fill = Region)) + ggplot2::geom_sf()

reprex package (v0.3.0)

于 2020-09-06 创建