【R】鹿児島県の人口別コロプレス図

鹿児島県の市区町村を人口別に塗りつぶしてみます。境界の描画は「地図で見る統計(統計GIS)」の「46000 鹿児島県全域 世界測地系緯度経度・Shapefile」から取得します。

library(ggplot2)
library(ggrepel)
library(sf)
library(tidyverse)
library(kableExtra)


map <- read_sf("shp/h27ka46.shp") # 鹿児島県のシェープファイル


dat <- map %>%
  group_by(CITY_NAME) %>% # 市名でグルーピング
  summarize('Pop.total' = sum(JINKO))  %>% # グループ単位で領域結合, 人口計算
  mutate( # 重心計算と座標値の抽出
    centroid = st_centroid(geometry),
    x = st_coordinates(centroid)[, 1],
    y = st_coordinates(centroid)[, 2]
  ) %>%
  arrange(desc(Pop.total))

dat %>%
  ggplot() +
  geom_sf(aes(fill = Pop.total)) +  # 人口毎に色分け
  coord_sf(datum = NA) + 
  scale_fill_viridis_c(alpha = 0.6) +
  theme_void()+ 
  geom_text_repel(aes(x = x, y = y, label = CITY_NAME), col="black",
                  family = "JP4", size = 3)


table_df<-data.frame(市区町村=dat$CITY_NAME, 人口=dat$Pop.total)

library(clipr)
table_df %>% 
  kable(align = "c", row.names=FALSE) %>%
  kable_styling(full_width = F) %>%
  column_spec(1, bold = T) %>%
  collapse_rows(columns = 1, valign = "middle") %>% 
  write_clip
市区町村 人口
鹿児島市 599814
霧島市 125857
鹿屋市 103608
薩摩川内市 96076
姶良市 75173
出水市 53758
日置市 49249
奄美市 43156
指宿市 41831
曽於市 36557
南九州市 36352
南さつま市 35439
志布志市 31479
いちき串木野市 29282
伊佐市 26810
さつま町 22400
枕崎市 22046
阿久根市 21198
西之表市 15967
肝付町 15664
垂水市 15520
大崎町 13241
屋久島町 12913
徳之島町 11160
長島町 10431
湧水町 10327
瀬戸内町 9042
中種子町 8135
錦江町 7923
南大隅町 7542
喜界町 7212
和泊町 6783
東串良町 6530
伊仙町 6362
知名町 6213
天城町 5975
龍郷町 5806
南種子町 5745
与論町 5186
宇検村 1722
大和村 1530
十島村 756
三島村 407

Add a Comment

メールアドレスが公開されることはありません。