是基于带有所示状态线的zipcode数据创建一个等值区域图。我正在使用ChoroplethrZip包。
我使用以下代码成功创建了地图,输出为地图A :
q1 <- c(0,1,10,25,100,500, Inf)
df_c <-cut(df,breaks=q1 ,right = FALSE ,labels = c("0","[1,10)","[10,25)","[25,100)","[100,500)",">500"))
df$value <- df_c
cols.blues <- brewer.pal(6,"Blues")
cols <- c("#ffffff",cols.blues[2:6])
choro = ZipChoropleth$new(df)
choro$ggplot_scale = scale_fill_manual("Cases"
,values = cols
,drop=FALSE)
choro$ggplot_polygon = geom_polygon(aes(fill=value), color = NA)
map <- choro$render_nationwide()
基于这篇文章(http://www.arilamstein.com/blog/2015/09/10/user-question-how-to-add-a-state-border-to-a-zip-code-map/),我试图添加状态行,但问题是状态图以正确的比例和位置绘制了阿拉斯加和夏威夷。所以我最终得到了 Map B 。
我可以调整ZipChoropleth地图以使用render函数而不是render_nationwide,就像这个map <- choro$render()
一样。这使AK和HI与状态线对齐,如 Map C 。但这不是我想要的。
我试着用另一种方式。我使用StateChoropleth函数来制作带有AK的状态图,并使用此代码将Hi重新调整大小并重新定位到左下角。
outline = StateChoropleth$new(df_pop_state)
outline$ggplot_polygon = geom_polygon(aes(fill=NA, size=0.25), alpha=0.0)
outline$show_labels = FALSE
outline$add_state_outline = TRUE
out = outline$render()
我得到的地图显示在地图D 中。
但我无法将地图A添加到地图D.我收到此错误错误:不知道如何将o添加到地块
我已经研究了两天,任何帮助都会很棒。