公立・私立大学をマッピングする
公立大学を追加したのとまったく同じ方法で、私立大学も追加できます。続いて、addLayersControl() 関数の overlayGroups 引数を使うと、利用者が公立・私立の大学をそれぞれ表示・非表示に切り替えられるようになります。overlayGroups 引数には、レイヤー作成時に定義したグループ(ここでは公立と私立)をベクトルで渡します。復習として、公立大学をレイヤーとして地図に追加する方法を示します。
# 公立大学のみを含むデータフレーム public を作成
public <- filter(ipeds, sector_label == "Public")
# 公立大学をレイヤーとして追加し、地図を `m3` として保存
m3 <- leaflet() %>%
addProviderTiles("CartoDB") %>%
addCircleMarkers(data = public, radius = 2,
label = ~htmlEscape(name),
color = ~pal(sector_label),
group = "Public") %>%
addLayersControl(overlayGroups = c("Public"))
htmltools ライブラリ、カラーパレット pal、そして公立大学を追加した地図 m3 はすでに読み込まれています。
この演習はコースの一部です
R で作る leaflet のインタラクティブマップ
演習の手順
- ipeds データをフィルタして、私立大学のみのデータフレームを作成します。
- 私立大学を新しいレイヤーとして
m3に追加します。 addLayersControl()関数とoverlayGroups引数を使って、公立・私立レイヤーを切り替えられるようにします。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Create data frame called private with only private colleges
private <- filter(ipeds, sector_label == "___")
# Add private colleges to `m3` as a new layer
m3 <- m3 %>%
___(data = private, radius = 2, label = ~htmlEscape(name),
color = ~pal(sector_label), group = "Private") %>%
___(___ = c("Public", "Private"))
m3