背景地図を取得する
ggmap を使って ggplot2 のプロットに地図を追加するには、次の2ステップがあります。
get_map()で地図をダウンロードするggmap()で地図を表示する
例として、ニューヨーク市の地図を取得してみましょう。
library(ggmap)
nyc <- c(lon = -74.0059, lat = 40.7128)
nyc_map <- get_map(location = nyc, zoom = 10)
get_map() には取得する地図の種類を制御する引数がいくつかありますが、ここでは基本的にデフォルトを使います。最も重要なのは最初の引数 location で、地図の中心にしたい経度・緯度のペアを指定します(NYC の座標は「coordinates nyc」を Google でさっと検索して見つけました)。次の引数 zoom は 3〜21 の整数で、ズームの深さを指定します。この演習では3つ目の引数 scale を 1 に設定します。これはダウンロードする地図の解像度を制御し、デフォルトの 2 より低くすることでダウンロード時間を短縮します。
地図の表示は、ダウンロードした地図を唯一の引数として ggmap() を呼び出すだけです。例: ggmap(nyc_map)
それでは実践です!このコースでは Corvallis の住宅売買データを扱いますが、場所をご存じないかもしれません。場所を確認しましょう。
この演習はコースの一部です
R で地理空間データを可視化する
演習の手順
corvallis という座標ペアを用意してあります。Corvallis を中心に、次のズームレベルで地図を取得し、各々を ggmap() でプロットしてください。ダウンロード時間を短くするため、scale = 1 を忘れずに設定しましょう。
zoom = 5(Corvallis はアメリカ西海岸、オレゴン州にあります。)zoom = 13(ウィラメット川が市内を流れ、Corvallis は Oregon State University の所在地です。)
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
corvallis <- c(lon = -123.2620, lat = 44.5646)
# Get map at zoom level 5: map_5
map_5 <- get_map(___, zoom = ___, scale = 1)
# Plot map at zoom level 5
ggmap(___)
# Get map at zoom level 13: corvallis_map
corvallis_map <- ___
# Plot map at zoom level 13