我正在处理 1991 年之前的一些全球数据,因此在苏联、南斯拉夫和捷克斯洛伐克分裂之前。我想使用 rworldmap 或 maps 绘制数据,但该包似乎只有现代世界地图易于访问。所有 1991 年之前的国家都显示为空白,并且边界划分了 1991 年之后的对应国家。
此代码生成历史地图:
if (requireNamespace("mapdata", quietly=TRUE) && packageVersion("mapdata") >= "2.3")
{map("mapdata::worldLores", fill = TRUE, col = 1:10)}
编辑:另外,根据下面的有用评论,历史地图 shapefile 很容易从以下位置获得:
library(cshapes)
cshp.data<-cshp(as.Date("1990-01-01"))
plot(cshp.data)
但我不知道是否可以将它与 rworldmap 函数结合使用......或者我是否必须弄清楚如何使用 maps 包,这似乎工作方式不同。(或者也许有一个 ggplot 解决方案?)
我目前使用的 rworldmap 代码(获取现代地图)是:
#make example data including Soviet Union
country <- as.vector(c("Afghanistan","Australia","Iceland","Soviet Union",
"Zimbabwe"))
value <- as.vector(c(5,10,100,10,50))
df<-data.frame(country,value)
#make map
map1 <- joinCountryData2Map(df, joinCode = "NAME", nameJoinColumn =
"country")
mapCountryData( map1, addLegend=F, catMethod="fixedWidth",
nameColumnToPlot="value" )
#...Soviet Union is blank