3

我正在尝试使用 R“maps”包按县制作美国的热图/等值线/专题图。不幸的是,数据库中似乎缺少一些县。

library(maps)
data(county.fips)
which(county.fips[,1] == 35006)
which(county.fips[,2] == 'new mexico,cibola')

结果找不到条目

> library(maps)
> data(county.fips)
> which(county.fips[,1] == 35006)
integer(0)
> which(county.fips[,2] == 'new mexico,cibola')
integer(0)

我知道这个fips代码存在!(http://en.wikipedia.org/wiki/Cibola_County,_New_Mexico http://en.wikipedia.org/wiki/List_of_counties_in_New_Mexico

有人知道我怎样才能制作完整的情节吗?所有我能找到的都在这里列出:http: //grokbase.com/t/r/r-sig-geo/0964515wmd/missing-county-in-maps

谢谢你的帮助!!

4

2 回答 2

1

啊哈,问题不在于地图,而在于county.fips。Cibola 县没有出现在该数据集中,所以当我去匹配我的数据 {variable-to-plot, FIPS code} 到列表时,Cibola 总是丢失。

有一种显示 Cibola 县的解决方法...为不涉及 County.fips 数据集的县写一条明确的行。

countynames <- match(county.fips[,"fips"], mydatavector$fips)
cibola_value <- mydatavector[which(mydatavector$fips == 35006)]
m <- map("county")
map("county", countynames, col=rainbow(100)[mydatavector$var_to_plot], fill=TRUE, add=TRUE)
map("county", "new mexico,cibola", col=rainbow(100)[cibola_value], fill=TRUE, add=TRUE)

注意:我还发现地图功能无法绘制美国的所有县,但如果我将调用分成 2 组,它就可以工作。

于 2013-01-23T16:52:25.543 回答
0

“县”数据库中不缺少 Cibola 县。应该足以绘制地图。参见例如:

map.text('county', 'new mexico')
于 2012-12-18T22:09:58.750 回答