在R中映射具有不同颜色的各个状态

时间:2018-04-07 20:53:41

标签: r ggplot2 graph mapping

我试图用不同颜色为亚利桑那州,犹他州和爱达荷州着色。理想情况下,我会使用颜色渐变来为我选择的变量着色。但我似乎无法在网上找到关于这样做的任何其他信息。

这是我到目前为止的代码:

library(ggplot2)
ggplot(data = azutid) + 
geom_polygon(aes(x = long, y = lat, group = group), fill = "green", color = "black") + 
  coord_fixed(1.3) + 
    guides(fill = FALSE)

我从基本的“maps”包中导入了地图和区域。谢谢!

1 个答案:

答案 0 :(得分:0)

通过使用传单包可以轻松完成。虽然您必须从中下载人口普查数据 https://www.census.gov/geo/maps-data/data/cbf/cbf_state.html

您还可以添加costum弹出框并在悬停标签上突出显示到地图。

library(leaflet)
library(spdplyr)
library(rgdal)
states <- readOGR(dsn = "./cb_2016_us_state_20m/cb_2016_us_state_20m.shp",
layer = "cb_2016_us_state_20m", verbose = FALSE)
group1 <- c("AZ","UT","ID")
newobj <- states %>%
filter(as.character(STUSPS) %in% group1)
m <- leaflet(newobj) %>%
setView(-96, 37.8, 4) %>% addProviderTiles("CartoDB.Positron")
pal = colorQuantile("YlOrRd", domain = newobj$value, n=7)
m %>% addPolygons(fillColor = "orange",
weight = 2,
opacity = 1,
color = "white",
dashArray = "3",
fillOpacity = 0.7)

enter image description here