1. Lära sig
  2. /
  3. Courses
  4. /
  5. R で地理空間データを可視化する

Connected

exercise

ggplot2 の強みを活かす

ggmap() のプロットに geom_***() レイヤーを追加し、各レイヤーで明示的にデータとマッピングを指定できることを見てきましたが、このやり方には大きな欠点が2つあります。後続のレイヤーでも毎回データとマッピングを指定する必要があること、そしてファセットがまったく使えないことです。

幸い、ggmap() にはこの欠点を回避する方法があります。それが base_layer 引数です。base_layer には通常の ggplot() 呼び出しを渡せて、すべてのレイヤーに共通のデフォルトのデータとマッピングを指定できます。

たとえば、最初のプロットは次のとおりでした。

ggmap(corvallis_map) +
  geom_point(data = sales, aes(lon, lat))

これは次のようにも書けます。

ggmap(corvallis_map, 
    base_layer = ggplot(sales, aes(lon, lat))) +
  geom_point()

ggmap() の中の ggplot() 呼び出しへ、最初の geom_point() から aes(x, y) と data を移動することで、通常の ggplot2 のやり方でファセットや追加レイヤーを使えるようになります。

それでは試してみましょう。

Instruktioner 1 / 2

undefined XP
    1
    2

最初のプロットを書き直し、ggmap() の base_layer 引数を使ってください。

  • ggmap() 呼び出しに base_layer 引数を追加します。
  • ここでは ggplot() を呼び出します。
  • data と x、y のマッピングを geom_point() の外に出して移動します。color 引数は、geom_point() 内の aes() の中に残してください。