[英]ggplot2 mapping county boundries in one color and state boundries in another on the same map
I am creating a choropleth county map with grey borders, and I also want to include the state boundries in black. 我正在创建一个带有灰色边框的choropleth县地图,我也希望将州边界包括在黑色中。 Does anyone know how I go about adding a second layer of state mapping to an existing county map?
有谁知道如何添加第二层状态映射到现有的县地图?
Here's the data set and code I ended up using: 这是我最终使用的数据集和代码:
#load libraries
library(ggplot2)
library(ggmap)
library(maps)
library(plyr)
#get wif file
wip <- read.csv("wip.csv")
#get map data for US counties and states
county_map <- map_data("county")
state_map <- map_data("state")
#merge wip and county_map
wip_map <- merge(county_map, wip, by.x=c("region", "subregion"),
by.y=c("region","subregion"), all.x=TRUE)
#resort merged data
wip_map <- arrange(wip_map, group, order)
#relpace NA with 0's
wip_map[is.na(wip_map)] <- 0
#generate a disctrete color pallette
pal <- c("#F7FCF5","#74C476","#41AB5D","#238B45","#006D2C","#00441B")
theme_clean <- function(base_size = 12) {
require(grid)
theme_grey(base_size) %+replace%
theme(
axis.title = element_blank(),
axis.text = element_blank(),
panel.background = element_blank(),
panel.grid = element_blank(),
axis.ticks.length = unit(0,"cm"),
axis.ticks.margin = unit(0,"cm"),
panel.margin = unit(0,"lines"),
plot.margin = unit(c(0,0,0,0),"lines"),
complete = TRUE
)
}
final_map <- ggplot(wip_map, aes(x=long, y=lat, group=group, fill=factor(CATEGORY))) +
geom_polygon(colour="grey", aes(fill=factor(CATEGORY))) +
scale_fill_manual(values=pal) +
expand_limits(x = wip_map$long, y = wip_map$lat) +
coord_map("polyconic") +
labs(fill="Number Per\nCounty") +
theme_clean()
final_map + geom_path( data = state_map , colour = "red")
Thanks! 谢谢!
Just add a geom_path
to your code... 只需在代码中添加
geom_path
即可...
I used red to highlight the boundaries but you can easily just set it to black. 我使用红色突出显示边界,但您可以轻松地将其设置为黑色。
ggplot( wip_map, aes( x = long , y = lat , group=group ) ) +
geom_polygon( colour = "grey" , aes( fill = factor( CATEGORY ) ) ) +
scale_fill_manual( values = pal ) +
expand_limits( x = wip_map$long, y = wip_map$lat ) +
coord_map( "polyconic" ) +
labs(fill="Number Per\nCounty") +
theme_clean( ) +
geom_path( data = state_map , colour = "red")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.