如何在 R 中创建英国的等值线图或气泡图

How to Create a Choropleth or Bubble Map of UK in R

我一直在尝试为我自己闪亮的仪表板项目构建英国的 Choropleth/Bubble 地图。

我的仪表板是一个学生信息管理系统,地图应该显示学生来自哪个地区(邮政编码或城市也可以)。不幸的是,大多数软件包,例如 plotly 和 ggmap,只包含有关美国各州的信息。

那么,有人可以告诉我如何为英国创建地图吗?这是我要完成的示例:Choropleth Map for UK

需要一些示例数据来推荐更精确的步骤。

这是我的评论所指的逐步实施。我没有使用我提到的 External Post,但它看起来像另一个参考,它做的事情与我制作地图所做的类似。

喜欢@FR。在他的回答中说,GADM 是获取所需地图数据的好地方 - shapefile。

Go to [GADM](http://www.gadm.org/) and click on the "Download" tab.
Use the pulldown menu to select United Kingdom as the country. 
Change the file format to Shapefile.
Click OK
Click Download
You should get a zip file called GBR_adm_shp.zip
Unzip it someplace useful
There should be a bunch of files with extensions cpg, csv, dbf, prj, shp, and shx

如果您还没有,请安装软件包 sprgeosmaptools

现在一些相当简单的 R 代码

library(maptools)
UK_adm2 = readShapeSpatial("PathToData\GBR_adm2.shp")
plot(UK_adm2)

zip 中实际上有三个 shapefile:adm0、adm1 和 adm2。尝试所有这三个,看看哪个具有您想要的详细程度。另外请注意,有一堆文件的名称基本相同,但扩展名不同。您要加载 .shp 文件。

您可以试验提供的三个形状文件 adm0、adm1 和 adm2(它们具有不同的详细程度)。您也可以尝试裁掉一些遥远的离岛,以便更好地欣赏主岛。

plot(UK_adm2, xlim=c(-8,0), ylim=c(49,61))

现在您在 R 对象中有了数据,您可以获取其中的内容。 names(UK_adm2) 将显示一些内部数据。您可以通过键入 UK_adm2$NAME_2 获取县列表。让我们重点介绍贝德福德郡。 plot(UK_adm2[3,], col="#FF444488", add=TRUE)

您刚刚看到您可以为各个县着色。你要做的是弄清楚你想如何给它们上色。这意味着将您想要显示的任何数量映射到配色方案。看看colorRampPalette。那么你会想要这样的东西:

plot(UK_adm2, col=rainbow(12, alpha=0.6), xlim=c(-8,0), ylim=c(49,61))

除了我写的地方 col=rainbow(12, alpha=0.6) 你需要替换一个有意义的配色方案。