使用plot_usmap包在R中创建地图图

时间:2018-11-15 22:14:50

标签: r filter usmap

我有一个数据集,其中包含不同的状态,邮政编码和索偿计数,这些数据分别位于不同的列中。我正在尝试创建一个图,以根据MA州的邮政编码显示总索赔计数。

数据集: enter image description here

我用它来按MA进行过滤:

MA_medicare <- medicare %>%
  filter(medicare$NPPES.Provider.State == "MA")

然后我用它来设置plot_usmap的fips代码:

MA_medicare$NPPES.Provider.State <- fips(MA_medicare$NPPES.Provider.State)
setnames(MA_medicare, old=c("NPPES.Provider.State"), new=c("fips"))

最后一次尝试绘制图形(不确定为什么它不起作用):

plot_usmap(data = MA_medicare, values= c("Total.Claim.Count", "NPPES.Provider.Zip.Code"), include = c("MA")) + scale_fill_continuous(low= "white", high= "red") + theme(legend.position = "right") 

错误:美学的长度必须为1或与数据相同(4350838):填充

1 个答案:

答案 0 :(得分:0)

我是usmap的开发人员。 plot_usmap仅接受一列值进行绘图,因此您可能正在寻找以下内容:

plot_usmap(data = MA_medicare, values = "Total.Claim.Count", include = c("MA"))

但是,您的数据是按邮政编码分类的,当前usmap不支持邮政编码地图(仅州和县级地图)。它使用FIPS列为地图上的州/县分配颜色。由于您是按州定义FIPS代码的,因此,您将只用一种纯色填充马萨诸塞州的整个州。