layers awesome r shiny leaflet

awesome - ¿Cómo puedo pasar información de la ventana emergente de Leaflet a Shiny output?



r leaflet weight (1)

¡Gracias al usuario5219763 por informarme sobre el argumento de layerId! Volví a mi mapa de folleto y agregué un argumento vectorizado para layerID. En mi caso, creé un vector de valores de la columna "GEO_ID" en el "marco de datos de grandes polígonos espaciales" que utilicé para el mapa.

geoID <- as.vector(mapable$GEOID) map2 <-leaflet() %>% addPolygons(data = mapable, layerId = geoID, popup = popup )

Cuando ejecuto la aplicación brillante y hago clic en un polígono (condado), puedo probar que el layerId también se está pasando:

observe({ event <- input$myMap_shape_click if (is.null(event)) return() print(event) })

Tengo un mapa de folleto (myMap) que he creado a partir de un shapefile y datos demográficos. El mapa muestra los polígonos (condados). Cuando ejecuto este mapa por su cuenta, o cuando lo renderizo desde Shiny, puedo hacer clic en un condado y la ID del condado aparece en la ventana emergente que creé.

Lo que estoy atrapado tratando de averiguar es cómo acceder a mis valores emergentes (ID) desde Shiny. Por ejemplo, en mi aplicación Shiny me gustaría hacer clic en el condado y hacer que la ID del condado se publique en una pantalla de texto o se almacene como una variable.

Aquí está el código relevante:

ui <- dashboardPage( dashboardBody(fluidRow( box(width = 9, status = "info", title = "CountyMap", leafletOutput("myMap")) ) server <- function(input, output) { output$myMap <- renderLeaflet({map2}) observe({ event <- input$myMap_shape_click if (is.null(event)) return() print(map2$county) # I know that''s not correct, # but I want the county id from my leaflet popup! val <- map2$county # Obviously not correct either, }) # but I would like to store this data

En caso de que esto ayude, el mapa Leaflet que llamo desde Shiny (arriba) se ve más o menos así, donde "mapable" es un gran marco de datos de polígonos espaciales:

popup <- paste0("ID: ", mapable$countyID) map2 <-leaflet() %>% addPolygons(data = mapable, popup = popup )

¡Cualquier pensamiento o empuje en la dirección correcta sería muy apreciado!