Geo Grid Designer
Geo Grid Designer를 사용해서 지도격자(geo grid)를 작성할 수 이고, 이미 제작된 지도격자를 grid_preview()
함수를 사용해서 확인도 가능하다.
library(geofacet)
library(tidyverse)
grid_preview(kr_seoul_district_grid1)
서울은 있지만 대한민국은 업어 Geo Grid Designer 를 사용해서 제작한다. 하단에 Submit Grid to Github
버튼을 누르면 new grid, Republic of Korea - Province level (SIDO) #356와 같이 Issues 탭에 올릴 수 있다.
geofacet
패키지에 올라간 것은 아니기에 다음과 같이 활용을 해보자.
library(geofacet)
library(tidyverse)
<- tribble(~"name", ~"fullname", ~"code", ~"row", ~"col",
sido_grid_tbl "서울", "서울특별시",11,1,2,
"인천", "인천광역시",23,1,1,
"경기", "경기도",31,1,3,
"강원", "강원도",32,1,4,
"세종", "세종특별자치시",29,2,2,
"충북", "충청북도",33,2,3,
"충남", "충청남도",34,3,1,
"대전", "대전광역시",25,3,2,
"대구", "대구광역시",22,3,4,
"경북", "경상북도",37,3,3,
"울산", "울산광역시",26,3,5,
"부산", "부산광역시",21,4,4,
"경남", "경상남도",38,4,3,
"전북", "전라북도",35,4,1,
"광주", "광주광역시",24,4,2,
"전남", "전라남도",36,5,2,
"제주", "제주특별자치도",39,5,3) %>%
select(name, code, row, col)
<- krvotes::president_2012 %>%
voters_tbl select(시도명, 박근혜:문재인) %>%
pivot_longer(cols = 박근혜:문재인) %>%
group_by(시도명, name) %>%
summarise(득표 = sum(value)) %>%
left_join(sido_code_tbl) %>%
rename(code = 코드)
%>%
voters_tbl mutate(`득표(만표)` = 득표/10^4) %>%
ggplot(aes(x=name, y = `득표(만표)`, fill =name)) +
geom_col() +
coord_flip() +
facet_geo(~ code, grid = sido_grid_tbl, label = "name", scales = "free") +
scale_y_continuous(labels = scales::comma) +
scale_fill_manual(values = c("red", "blue")) +
theme(legend.position = "none")
데이터 과학자 이광춘 저작
kwangchun.lee.7@gmail.com