R Leaflet layersControlOptions

Viewed 20

Anybody know how to set a default layer to show just one Overlay group first rather than all at once? For example, in the following if I just wanted to show 'Mex' initially and then let the viewer swap to 'GTM'?

library(raster)
library(leaflet)

#load in shapefiles
gtm <- getData('GADM', country = 'GTM', level = 0)
mex <- getData('GADM', country = 'MEX', level = 0)

leaflet() %>%
  addTiles() %>% 
  addPolygons(data = gtm, 
              fillColor = 'red', 
              group = "gtm") %>% 
  addLegend(color = "red",
             labels = gtm@data$GID_0, 
             group = "gtm") %>% 
  
  addPolygons(data = mex,
              fillColor = 'blue',
              group = "mex") %>%
  addLegend(color = "blue",
            labels = mex@data$GID_0,
            group = "mex") %>%

  addLayersControl(overlayGroups = c("gtm", "mex"), 
                   options = layersControlOptions(collapsed = F),
                   
                  )
1 Answers

Use function hideGroup to hide groups from code

addLayersControl(overlayGroups = c("gtm", "mex"), 
               options = layersControlOptions(collapsed = F)) %>%
                 

hideGroup("mex")

See the official leaflet vignette under section Show/Hide Layers

Related