始める無料で始める

プロバイダタイル

前の演習では、addTiles() によって leaflet マップに既定の OpenStreetMap (OSM) タイルが追加されました。マップタイルは複数の地図画像を組み合わせたもので、ユーザーがズームやパンをすると表示が連動して変わり、演習2で試したインタラクティブな操作が可能になります。

leaflet パッケージには、利用できるマップタイルが100種類以上用意されています。これらのタイルは providers というリストに格納されており、addTiles() の代わりに addProviderTiles() を使ってマップに追加できます。

leaflettidyverse のライブラリはあらかじめ読み込まれています。

この演習はコースの一部です

R で作る leaflet のインタラクティブマップ

コースを見る

演習の手順

  • leaflet パッケージに含まれる100種類以上のプロバイダタイルのリストを表示してください。
  • 出力を見やすくするため、names() 関数を使ってプロバイダタイルの名前だけを表示してください。
  • stringr パッケージの str_detect() 関数を使って、文字列 "CartoDB" を含むプロバイダタイルを特定してください。
  • 文字列 "CartoDB" を含むすべてのプロバイダマップタイルの名前を表示してください。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Print the providers list included in the leaflet library
providers

# Print only the names of the map tiles in the providers list 
names(___)

# Use str_detect() to determine if the name of each provider tile contains the string "CartoDB"
str_detect(___(providers), "___")

# Use str_detect() to print only the provider tile names that include the string "CartoDB"
___(providers)[str_detect(names(providers), "___")]
コードを編集して実行