【R】長野県の人口別コロプレス図

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

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


map <- read_sf("shp/h27ka20.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
市区町村 人口
長野市 377598
松本市 243293
上田市 156827
飯田市 101581
佐久市 99368
安曇野市 95282
伊那市 68271
塩尻市 67135
千曲市 60298
茅野市 55912
須坂市 50725
諏訪市 50140
岡谷市 50128
中野市 43909
小諸市 42512
駒ヶ根市 32759
東御市 30107
大町市 28041
箕輪町 25241
飯山市 21438
下諏訪町 20236
辰野町 19770
軽井沢町 18994
御代田町 15184
南箕輪村 15063
坂城町 14871
富士見町 14493
松川町 13167
高森町 13080
山ノ内町 12429
木曽町 11826
佐久穂町 11186
飯綱町 11063
小布施町 10702
松川村 9948
池田町 9926
飯島町 9530
白馬村 8929
宮田村 8821
信濃町 8469
山形村 8395
原村 7566
立科町 7265
高山村 7033
豊丘村 6592
阿智村 6538
喬木村 6310
長和町 6166
阿南町 4962
中川村 4850
筑北村 4730
小海町 4713
上松町 4670
木島平村 4658
川上村 4607
朝日村 4462
青木村 4343
南木曽町 4313
下條村 3851
大桑村 3825
野沢温泉村 3479
南牧村 3408
木祖村 2926
小谷村 2904
麻績村 2788
小川村 2665
栄村 1953
生坂村 1843
泰阜村 1702
天龍村 1365
大鹿村 1023
南相木村 1005
根羽村 970
王滝村 839
北相木村 774
売木村 575
平谷村 484

Add a Comment

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