在R map中使用FIPS代码着色县

时间:2015-10-14 15:47:09

标签: r maps fips choroplethr rmaps

我正在寻找一种方法来遮蔽美国地图上的县。我有可以作为参数输入的数字/字符县FIPS代码列表。我只需要强调这些县 - 所以只需要遮蔽它们,并且没有与县相对应的值或变化。我试着抬头

 library(choroplethr)
 library(maps)

county_choropleth(df_pop_county)

head(df_pop_county)
    region  value
 1   1001  54590
 2   1003 183226
 3   1005  27469
 4   1007  22769
 5   1009  57466
 6   1011  10779

但这些需要一个区域,价值对。例如,上面的fips代码和人口。有没有办法调用county_choropleth函数而不必使用值,只需使用fipscode数据帧。通过这种方式,我可以用我的fips代码用一种颜色。使用Choroplethr在R中实现这一目标的有效方法是什么?

1 个答案:

答案 0 :(得分:5)

以下是使用maps库的示例:

library(maps)
library(dplyr)

data(county.fips)

## Set up fake df_pop_county data frame
df_pop_county <- data.frame(region=county.fips$fips)
df_pop_county$value <- county.fips$fips
y <- df_pop_county$value
df_pop_county$color <- gray(y / max(y))

## merge population data with county.fips to make sure color column is
## ordered correctly.
counties <- county.fips %>% left_join(df_pop_county, by=c('fips'='region'))
map("county", fill=TRUE, col=counties$color)

这是生成的地图:

US Counties

请注意,FIPS较低的县较暗,而FIPS较高的县较轻。