如何在 R 中为美国地图中的州着色

How to color states in US map in R

我想画一张美国地图,有的州是蓝色的,有的州是白色的

现在,我有州名列表:

c=c("ILLINOIS", "KANSAS","LOUISIANA","MAINE","MICHIGAN","MINNESOTA","MISSISSIPPI" )

然而,当我使用:

map(database = "state",regions = c,col = "blue",fill=T)

它只显示:

这不是我想要的,我想看到其他状态都是白色的,怎么办?

目前您要求 R 仅绘制这些状态,因此您需要删除 region 参数并找出一种将颜色选择与状态名称相匹配的方法:

require(maps)
namevec <- map(database = "state", col = "blue",fill=T, namesonly=TRUE)

> str(namevec)
 chr [1:63] "alabama" "arizona" "arkansas" "california" ...

所以试试这个:

map(database = "state",col = c("white", "blue")[1+(namevec %in% tolower(c) )],fill=T)

@rawr 评论中的解决方案有效。创建具有填充颜色的完整地图:

map(database = "state")
map(database = "state",regions = c,col = "blue",fill=T,add=TRUE)