R maps() 中的县级 FIPS 准确吗?
Are county FIPS accurate in R maps()?
当我运行下面的代码...
require(maps)
colors <- data.frame(county=county.fips$polyname,color=rep("#FFFFFF",nrow(county.fips)), stringsAsFactors=FALSE)
colors[colors$county=="arizona,maricopa","color"] <- "#ABCABC"
map("county", col = colors$color, fill = TRUE)
我得到一个非马里科帕县的突出显示值...它是莫哈维县。
是我做错了什么,还是数据可疑?
我正在使用 maps_2.3-11
简短的回答是你做错了。您正在访问的名称与县数据库中的多边形顺序不同。要做你想做的事,你应该使用以下内容:
map("county")
map("county", "arizona,maricopa", col="#ABCABC", fill=T, add=T)
作为替代方案,如果您确实需要通过 state,county
名称映射辅助值,您可以执行以下操作:
## Get state,county names in the order they will be plotted:
c <- map("county", namesonly=T)
c1 <- rep("#FFFFFF", length(c))
c1[which(c=="arizona,maricopa")] <- "#FF0000"
map("county", col=c1, fill=T)
当我运行下面的代码...
require(maps)
colors <- data.frame(county=county.fips$polyname,color=rep("#FFFFFF",nrow(county.fips)), stringsAsFactors=FALSE)
colors[colors$county=="arizona,maricopa","color"] <- "#ABCABC"
map("county", col = colors$color, fill = TRUE)
我得到一个非马里科帕县的突出显示值...它是莫哈维县。
是我做错了什么,还是数据可疑?
我正在使用 maps_2.3-11
简短的回答是你做错了。您正在访问的名称与县数据库中的多边形顺序不同。要做你想做的事,你应该使用以下内容:
map("county")
map("county", "arizona,maricopa", col="#ABCABC", fill=T, add=T)
作为替代方案,如果您确实需要通过 state,county
名称映射辅助值,您可以执行以下操作:
## Get state,county names in the order they will be plotted:
c <- map("county", namesonly=T)
c1 <- rep("#FFFFFF", length(c))
c1[which(c=="arizona,maricopa")] <- "#FF0000"
map("county", col=c1, fill=T)