library(leaflet)
library(sf)
library(dplyr)
districts <- read_sf(
system.file("extdata/districts.geojson", package = "geospaar")
)
bb <- unname(st_bbox(districts))
xy <- st_centroid(districts) %>% st_coordinates() %>%
bind_cols(name = districts$distName, .)
slist <- list("color" = "white")
label_opts <- labelOptions(noHide = TRUE, style = slist, direction = 'center',
textOnly = TRUE, textsize = "5px")
m <- leaflet() %>%
addProviderTiles("Esri.WorldImagery") %>%
fitBounds(bb[1], bb[2], bb[3], bb[4]) %>%
addPolygons(data = districts, fill = FALSE, color = "white",
group = "Districts", weight = 1) %>%
addLabelOnlyMarkers(xy$X, xy$Y, label = xy$name, group = "Names",
labelOptions = label_opts) %>%
addLayersControl(overlayGroups = c("Districts", "Names"),
options = layersControlOptions(collapsed = FALSE,
autoZIndex = FALSE))