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による地理空間データの可視化