Как легенда может быть "отключена" динамически с googleway? Вот код, адаптированный из виньетки googleway (этот пример обновлен по сравнению с предыдущей версией на основе слайдера и, как мы надеемся, более актуален для этого вопроса)
library(googleway)
library(tidyverse)
library(shiny)
ui <- fluidPage(
checkboxInput("check", "Fill polygons"),
google_mapOutput(outputId = "map")
)
server <- function(input, output){
output$map <- renderGoogle_map({
google_map(key = "") %>%
add_polygons(data = melbourne, id = "polygonId", pathId = "pathId",
polyline = "polyline", fill_opacity = 0, fill_colour = "SA2_NAME",
legend = FALSE, update_map_view = FALSE)
})
# observe check box
observe({
show_legend <- input$check
my_fill_opacity <- as.integer(input$check)
if(show_legend){
google_map_update(map_id = "map") %>%
update_polygons(data = melbourne, id = "polygonId",
fill_opacity = 1, fill_colour = "SA2_NAME",
legend = TRUE)
} else {
google_map_update(map_id = "map") %>%
update_polygons(data = melbourne, id = "polygonId",
fill_opacity = 0, fill_colour = "SA2_NAME",
legend = FALSE)
}
})
}
shinyApp(ui, server)
Левая картинка с легендой, выключенной в начале. Средняя картинка после нажатия «Заполнить полигоны». Правильная картинка после снятия флажка «Заполнить полигоны» - видно, что легенда не исчезает.