如何选择特定国家/地区制作Choropleth地图

我正在尝试绘制一些特定国家的choropleth地图。我的数据具有Choropleth映射的值,而其他我没有数据的国家/地区将以灰色绘制。

这是到目前为止的代码:

data_iso = data.frame(region=c("Argentina","Brazil","Chile","Colombia","Costa Rica","Mexico","Panama","Peru","El Salvador"),ratemort = c(25.510391,73.875825,20.297896,73.557939,23.266236,42.190321,48.069608,9.971303,109.941822))

library(ggmap)
library(ggplot2)
library(raster)
library(maptools)

mapa <- borders("world",regions = c("Brazil","Uruguay","Argentina","French Guiana","Suriname","Venezuela","Bolivia","Ecuador","Paraguay","Guyana","Nicaragua","Honduras","El Salvador","Belize","Guatemala","Trinidad and Tobago","Caribe","Puerto Rico","Dominican Republic","Haiti","jamaica","Cuba","Bahamas","Antiles","Dominica","Saba"),fill = "grey70",colour = "black")
ggplot() + mapa + theme_bw() + xlab("Longitude (decimals)") + ylab("Latitude (decimals)") + 
  theme(panel.border = element_blank(),panel.grid.major = element_line(colour = "grey80"),panel.grid.minor = element_blank())

如何选择特定国家/地区制作Choropleth地图

然后,我想在各自国家中添加data_iso$ratemort的值。

有什么建议吗?

jacky0212 回答:如何选择特定国家/地区制作Choropleth地图

我不确定您的问题是什么。但是,由于您使用了choroplethr标签,因此我将说明如何使用choroplethr包制作地图:

data_iso = data.frame(region=c("argentina","brazil","chile","colombia","costa rica","mexico","panama","peru","el salvador"),value = c(25.510391,73.875825,20.297896,73.557939,23.266236,42.190321,48.069608,9.971303,109.941822))

country_choropleth(data_iso,zoom=data_iso$region)

enter image description here

关键修改是这个。与?country_choropleth软件包套件中的所有函数一样,函数choroplethr要求您的数据框具有一个名为region的列和一个名为value的列。另外,choroplethr中的所有区域通常都使用小写字母。有关命名约定的详细信息,请参见?country_choroplethr

您的地图没有颜色。我不确定这是否是您需要帮助的错误。

默认情况下,choroplethr使用Black传达NA值。在这里,我将缩放设置为仅包含数据的国家/地区。我不知道地图上是否显示了您的缩放列表中的所有县,是否以与地图中出现的相同方式来拼写它们,等等。有关详细信息,请参见zoom中的?country_choropleth参数。通常,正确命名是R中映射(包括choroplethr程序包)中最困难的部分。

,

如果要使用ggplot,则需要将数据框添加到ggplot,并在列的fill中添加aes,以使地图根据的值填充颜色那个速率魔。

尝试这样的事情:

ggplot(data = data_iso,aes(fill = ratemort)) + mapa + theme_bw() +  
 xlab("Longitude (decimals)") + ylab("Latitude (decimals)") +  
 theme(panel.border = element_blank(),panel.grid.major =  
 element_line(colour = "grey80"),panel.grid.minor = element_blank())
本文链接:https://www.f2er.com/3062994.html

大家都在问