sfパッケージのvignette「Plotting Simple Features」を読んだあとのメモ

sfのバージョン0.5-5で以下のvignetteが追加されています。sfをプロットする方法がいろいろ載っていて便利です。

https://cran.r-project.org/web/packages/sf/vignettes/sf5.html

前半はplot()のオプションの解説です。ggplot2派の人はそのへんはサクサク飛ばしてPlotting sf objects with other packagesというところを見ましょう。以下の4つの方法が載っています。

  • grid(というか、sfのオブジェクトをgrobとして扱う方法)
  • ggplot2
  • mapview
  • tmap

ggplot2

ggplot2は、geom_sf()が実装されて久しいですが、まだCRANにはリリースされていません。今のところdevtools::install_github("tidyverse/ggplot2")でインストールする必要があります。

今のところドキュメントがあまりないのが難点です。

mapview

mapviewパッケージは、sfパッケージと同じくr-spatialというグループの元で開発されているパッケージです。

オプションがいろいろあって使いやすいのかはよく分かりませんが、まあsfでやっていくなら未来が約束されているという感じのパッケージでしょう。ドキュメントはvignetteが充実しているのでこれを読むといいでしょう。

tmap

tmapパッケージでもmapviewパッケージのようなインタラクティブな地図がつくれます。違いは、

Unlike mapview, tmap currently converts sf objects first to Spatial* objects using as(obj, "Spatial"). For sf objects that do not have an equivalent representation in sp, this fails.

とのことです。あんまり真面目に使ったことはないんですが、個人的な感覚としてはtmapはちょっと操作が独特な感じがするので後発のmapviewの方がおすすめです。

インタラクティブじゃない地図を描く方はけっこういい感じの出来栄えに見えますが、これもggplot2本体にgeom_sf()が入ったら廃れていくのかもしれません。