我将rworldmap
包与WorldBank数据一起使用,我很喜欢。我想绘制伊朗的 map ,并提供与每个省有关的数据。这样做的步骤是什么?我知道我们可以在R
中为美国这样的某些国家/地区绘制这样的 map ,但并非所有国家/地区都可以。
最佳答案
您可以将rworldmap
与@jazzurro的好建议结合起来,使用raster
来获取GADM边界。
我怀疑您的主要困难可能是使省名与您的数据和 map 相匹配。
下面的示例使用您可以更改的默认值,并且仅为每个省提供不同的颜色。
library(raster)
library(rworldmap)
## 1 Get map of provinces (level 1 admin regions)
iranLevel1<- raster::getData("GADM", country = "Iran", level = 1)
## 2 join your [data] onto the map by specifying the join column in each
## this will report on any mis-matches between province names
#iranLevel1 <- rworldmap::joinData2Map([data],nameMap="iranLevel1",nameJoinIDMap="NAME_1",nameJoinColumnData=[insert])
## 3 plot map (change NAME_1 to the data you want to plot)
rworldmap::mapPolys(iranLevel1, nameColumnToPlot="NAME_1", addLegend=FALSE)
## 4 add text labels for provinces
text(iranLevel1, label="NAME_1", cex=0.7)
请注意,
joinData2Map()
和mapPolys()
与joinCountryData2Map()
和mapCountryData()
更通用。另一种方法是使用
choroplethr
包。