yy16ki’s diary


スポンサードリンク

ggplot2で地図を描く

Rで地図上にプロットをする必要があったのでその方法のメモです.
ggplot2のmap_data()を使えば地図データをggplotで扱いやすい形式に 変換して返してくれるので,
あとはプロットすれば簡単にきれいな地図を描画できます.

パッケージの読み込み

library(ggplot2)
packageVersion("ggplot2")

プロット

World_Map<-map_data("world")
values <- data.frame(id=factor(unique(World_Map$group)))
positions <- data.frame(id=factor(World_Map$group),
                        x= World_Map$long,  y =World_Map$lat)
ggplot(values) +
  geom_map(aes(map_id=id),map=positions) + 
  xlim(c(120,180))+ylim(c(10,50))

f:id:yy16ki:20210310230042p:plain

地図データはmapsというパッケージから 読み込んでおり,map_data()ggplot用に変換という流れです. 変換後のデータは次のようになっています.

head(World_Map)

項目groupが同じデータが一つのポリゴンの情報となっています.

参考文献

https://ggplot2.tidyverse.org/reference/geom_map.html


スポンサードリンク