Я создаю несколько карт листовок в R, которые имеют несколько листов провайдеров и группы наложений. Как я могу гарантировать, что одновременно может отображаться только одна оверлейная группа, сохраняя при этом плитки выбранных провайдеров?
До сих пор я пытался включить свои оверлейные группы в базовые группы, однако, если я делаю это, яможет только показать плитки провайдера или данные. Поскольку мои знания JavaScript не очень хороши, я как бы застрял здесь.
library(spData)
library(leaflet)
library(sf)
us_states <- st_transform(us_states, 4326)
us_states2 <- st_centroid(us_states)
tiles <- list(
OpenStreetMap = "OpenStreetMap",
Esri.WorldImagery = "Esri.WorldImagery",
CartoDB.Positron = "CartoDB.Positron",
CartoDB.DarkMatter = "CartoDB.DarkMatter"
)
leaflet() %>%
addProviderTiles("OpenStreetMap",
group = "OpenStreetMap") %>%
addProviderTiles("Esri.WorldImagery",
group = "Esri.WorldImagery") %>%
addProviderTiles("CartoDB.Positron",
group = "CartoDB.Positron") %>%
addProviderTiles("CartoDB.DarkMatter",
group = "CartoDB.DarkMatter") %>%
addLayersControl( names(tiles), position = c("topleft"),
overlayGroups = c("polygons", "centroids")) %>%
addPolygons(data = us_states, group = "polygons") %>%
addMarkers(data = us_states2, group = "centroids") %>%
hideGroup("centroids")
Это краткий пример того, что я пытаюсь сделать. Вы должны выбирать только многоугольники или центроиды, но не оба одновременно.