NipponMapを活用して都道府県別データを日本地図に可視化.今回は人口を表現する.
パッケージ:sf,tidyverse,Nipponmap
Installを選択.「…」はインストールしたいパッケージ名.
#install.packages("...")の#を削除し,インストール.「…」はインストールしたいパッケージ名.Rコードは削除可能.library(...)でパッケージの読込.シェープファイル
NipponMapがインストールできれば,シェープファイル(shapes)がユーザライブラリにある.1このファイルを現在作業しているフォルダ(ディレクトリ)に移す.
R > win-library > x.y
(Rのバーション) > NipponMap
shapesと示されるフォルダがあるので,これをコピーし,
現在作業しているフォルダにペーストする.
オブジェクトをNippon_mapと名付け,read_sf()でデータを読込.
Rではオブジェクトにデータを格納. Nippon_map<-以降のコマンドをread_sf(system.file("shapes/jpn.shp"), package="NipponMap")にしても可能.この場合,移す作業は必要ない.crs="WGS84"は削除しても目的は達成可能.crs(Coordinate
Reference System,座標参照系)を1984年に定められた世界測地系(World
Geodetic System)に投影を意味.日本地図の可視化
ggplot()を用いて都道府県の境界が示された日本地図を可視化.ggplot()を用いた可視化に関しては,括弧内の示し方が何通りかあるが,このチュートリアルではできるだけ次のように統一.
ggplot():括弧内記入なし.geom_sf():シェープファイルに含まれる図形(地物)・属性情報を可視化する関数.data=Nippon_mapをデータとして利用するように指示.データの中身
head()を用いるとNippon_mapの上から6行目までの中身が確認可能.
population)データが4列目に含まれていることがわかる.| SP_ID | jiscode | name | population | region | geometry |
|---|---|---|---|---|---|
| 1 | 01 | Hokkaido | 5506419 | Hokkaido | MULTIPOLYGON (((139.7707 42… |
| 2 | 02 | Aomori | 1373339 | Tohoku | MULTIPOLYGON (((140.8727 40… |
| 3 | 03 | Iwate | 1330147 | Tohoku | MULTIPOLYGON (((140.7862 39… |
| 4 | 04 | Miyagi | 2348165 | Tohoku | MULTIPOLYGON (((140.2802 38… |
| 5 | 05 | Akita | 1085997 | Tohoku | MULTIPOLYGON (((140.7895 39… |
| 6 | 06 | Yamagata | 1168924 | Tohoku | MULTIPOLYGON (((140.2802 38… |
人口分布の可視化
aes(fill=...):示したい変数「…」(数値データ)を指定.ここではpopulationを指定.fillは枠内の色.2
fillをcolorにすると,枠線の色.枠内と枠線の色を両方指示することも可能.最後に数値データの色を変更し,地図のタイトルをつけ,凡例を変更して,完成地図を示す.
viridisを利用.3viridisは視覚的に優れており,バリアフリー,白黒印刷にも対応可能.
scale_fill_viridis_c():連続変数(aes内のfill)の色分けを指示する関数.cは連続変数option="G"とする.option="mako"に等しい.direction=-1を用いて色の順番を逆にする.labs():凡例を「人」にするように指示.aes内のfill=populationを「人」に変更している.
captionに出典を記す.図の右下に表示される.ggtilte():図のタイトルを指示する関数.ggplot()は初期設定のままの場合,背面(枠内)は灰色,線(枠)は白で描写(theme_grey()).theme_bw()(black
& white)を利用すると背面を白,線を黒に変更可能.ggplot()+
geom_sf(data=Nippon_map, aes(fill=population))+
scale_fill_viridis_c(option="G", direction=-1)+
labs(fill="人",
caption="出典:NipponMap")+
ggtitle("都道府県別人口")+
theme_bw()Rによる地理空間データの可視化