3

国と地域のデータを保持し、ユーザーが地域を選択できる小さなアプリを Shiny で作成しています。次に、アプリにあるリーフレット マップが拡大され、選択した地域に焦点が当てられます (つまり、ユーザーが「ヨーロッパ」をクリックすると、地図がヨーロッパに拡大されます)。

geometryシンプルな機能列をリーフレット マップのフィルターとして使用する方法がわかりません。これは簡単な例です(Shiny ではありませんが、問題は Shiny に関連していないと思います)。

library(rnaturalearth) 
library(dplyr)
library(leaflet)

# sf data:
earth <- ne_countries(returnclass = "sf") %>% 
  select(Region = region_un, geometry)

# little dataset:
df <- data_frame(
  Region = c("Europe", "Africa", "Asia", "Oceania", "Americas"),
  Score = c(0.85, 0.77, 0.81, 0.93, 0.79)
)
# join:
df <- full_join(df, earth)

# simulate what I'm doing in Shiny:
input <- list()
input$region <- "Europe"

df2 <- filter(df, Region == input$region)

leaflet(df2) %>% addTiles()

これにより、次が生成されます。 ここに画像の説明を入力

これは、使用した場合と同じですdf(フィルター処理されていないデータフレーム)。これについてどうすればよいかについてのアイデアはありますか?Shiny/leaflet のドキュメントでは見つかりませんでした。

4

1 に答える 1