使用 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 创建
我想制作一张英国地图,并能够按颜色对区域进行颜色编码。我的数据集中的区域包括东北、东南、西米德兰兹、威尔士、北爱尔兰等
我一直在用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 创建