【R】岐阜県の人口別コロプレス図

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

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


map <- read_sf("shp/h27ka21.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() +
  annotation_map_tile(zoomin = 0) +
  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) +
  labs(caption = "\U00a9 OpenStreetMap contributors") +
  theme_minimal()


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
市区町村 人口
岐阜市 406735
大垣市 159879
各務原市 144690
多治見市 110441
可児市 98695
高山市 89182
関市 89153
中津川市 78883
羽島市 67337
土岐市 57827
美濃加茂市 55384
瑞穂市 54354
恵那市 51073
郡上市 42090
瑞浪市 38730
海津市 35206
本巣市 33995
下呂市 33585
養老町 29029
垂井町 27556
山県市 27114
飛騨市 24696
岐南町 24622
池田町 24347
大野町 23453
笠松町 22750
揖斐川町 21503
美濃市 20760
神戸町 19282
北方町 18169
御嵩町 18111
安八町 14752
八百津町 11027
川辺町 10197
輪之内町 9973
白川町 8392
坂祝町 8202
関ケ原町 7419
富加町 5564
七宗町 3876
東白川村 2261
白川村 1609

Add a Comment

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