Natural Earthは世界各国の無料のベクターデータ(ポイント(点),ライン(線),ポリゴン(面)で地理空間情報を表現)を提供.ここでは,世界の所得分布,ヨーロッパ州の人口分布を示す.世界の所得分布については,座標参照系を変えて,地図を描写する方法も紹介.
install.packages("rnaturalearth").パッケージ:sf,tidyverse,rnaturalearth
世界地図の読込
世界地図を可視化.
ne_countries()で読込.
scale)はmiddleを指示.World_mapとする.World_mapは地物(マルチポリゴン)とその属性(地理空間情報を含む)をもつsfオブジェクト(class(World_map)のRコードで確認可能).とりあえず,世界地図を可視化.
データの中身
上の表を右側に進むと,所得を階級分けした列(income_grp)が現れる.
color)は白(white)に指示.legend.position="bottom")し,2行にする(guide_legend(nrow=2)).caption).ggplot()+
geom_sf(data=World_map, aes(fill=income_grp),
color="white")+
scale_fill_viridis_d(option="G")+
labs(fill="所得グループ",
caption="出典:Natural Earth")+
ggtitle("世界の所得分布")+
theme_bw()+
theme(legend.position="bottom")+
guides(fill=guide_legend(nrow=2))投影座標系を適用した座標参照系(CRS)に基づき,世界地図に所得分布を可視化.
ggplot()+
geom_sf(data=World_map, aes(fill=income_grp),
color="white", size=0.001)+
scale_fill_viridis_d(option="G")+
labs(fill="所得グループ",
caption="出典:Natural Earth")+
ggtitle("世界の所得分布(ロビンソン図法)")+
theme_bw()+
coord_sf(crs="+proj=robin")+
theme(legend.position="bottom")+
guides(fill=guide_legend(nrow=2))moll:モルワイデ図法.ggplot()+
geom_sf(data=World_map, aes(fill=income_grp),
color="white", size=0.001)+
scale_fill_viridis_d(option="G")+
labs(fill="所得グループ",
caption="出典:Natural Earth")+
ggtitle("世界の所得分布(モルワイデ図法)")+
theme_bw()+
coord_sf(crs="+proj=moll")+
theme(legend.position="bottom")+
guides(fill=guide_legend(nrow=2))laea)を利用.
coord_sf()にcrsをEPSG:3035(ヨーロッパ州中心)と指示. "+proj=laea +lat_0=52 +lon_0=10"でもよい.ggplot() +
geom_sf(data=World_map, aes(fill=income_grp),
color="white") +
scale_fill_viridis_d(option="G") +
labs(fill="所得グループ", caption="出典:Natural Earth") +
ggtitle("世界の所得分布(ランベルト正積方位図法)") +
theme_bw() +
coord_sf(crs=st_crs("EPSG:3035"))+
theme(legend.position="bottom") +
guides(fill=guide_legend(nrow=2))イコールアース図法
アジアー太平洋を中心とした地図の可視化
ggplot()+
geom_sf(data=Asia_Pacific_map, aes(fill=income_grp),
color="white")+
scale_fill_viridis_d(option="G")+
labs(fill="所得グループ",
caption="出典:Natural Earth")+
ggtitle("世界の所得分布(アジアー太平洋中心)")+
theme_bw()+
coord_sf(crs=st_crs("ESRI:53037"))+
theme(legend.position="bottom")+
guides(fill=guide_legend(nrow=2))ランベルト正積方位図法
laea)に対応する
EPSGコードは存在しない模様.
laea:ランベルト正積方位図法.+lon_0=140 +lat_0=36:経度(東経)140°,緯度(北緯)36°方向へ.ggplot() +
geom_sf(data=World_map, aes(fill=income_grp),
color="white") +
scale_fill_viridis_d(option="G") +
labs(fill="所得グループ",
caption="出典:Natural Earth") +
ggtitle("世界の所得分布(ランベルト正積方位図法)") +
theme_void() +
coord_sf(crs=st_crs(
"+proj=laea +lon_0=140 +lat_0=36")) +
theme(legend.position="bottom") +
guides(fill=guide_legend(nrow=2))ヨーロッパ州の選抜
世界地図からヨーロッパ州に属する国を切り抜く(filter()).
continentの列.
Europe_mapと名付ける.ヨーロッパ州地図
国名(英字2桁の国名コード)を記した地図を作成する.
Rコードは示さない.人口分布
上の表を右側に進むと,人口(人)を示す(pop_est)が現れる.
ggplot()+
geom_sf(data=Europe_map, aes(fill=pop_est/1000000),
color="white")+
scale_fill_viridis_c(option="G", direction=-1)+
labs(fill="百万人",
caption="出典:Natural Earth")+
ggtitle("ヨーロッパ州の人口分布")+
coord_sf(xlim = c(-25,50), ylim = c(35,70))+
theme_void()参考ウェブサイト
私たちのR: ベストプラクティスの探究–20.11.1 世界地図(アクセス日:2022-08-14)
World Map–Basic Example(アクセス日:2022-08-15)
Geocomputation with R–7.9 カスタム地図投影法(アクセス日:2025-03-01)
Rによる地理空間データの可視化
アイコン
Font Awesome 6.7.2
生成AIの使用について
ChatGPTのサービスを利用した後,内容を確認し,必要に応じて編集を行った.