Leaflet地图实现仅显示激活底图层对应图例的问题求助
Leaflet地图实现仅显示激活底图层对应图例的问题求助
我正在制作一张包含7个底图层的Leaflet地图,由于图例数量太多,没办法全部在屏幕上展示,所以我需要实现一个功能:只有当前激活的底图层对应的图例才会显示出来。
目前我用htmlwidgets已经成功把所有图例都隐藏了,但遇到了一个问题——没法让当前激活的那个底图层的图例显示出来。
下面是我的图层控制代码:
addLayersControl( #layer control baseGroups = c("Parishes, plain", "Unemployment rate", "Labor force participation rate", "FITAP, Parish","SNAP, Parish", "KCSP, Parish", "SNAP, zip"), overlayGroups = c("Community colleges", "Department of Corrections facilities", "Veterans Affairs Facilites" ), options = layersControlOptions(collapsed = FALSE) ) %>% showGroup("Parishes, plain")
我试过用hidegroup来控制图例组,但没有效果。再强调一下现状:通过htmlwidgets我已经把所有图例都隐藏了,但就是没法让激活图层的图例重新显示出来。
编辑补充:下面是我添加覆盖层及其对应图例的代码格式示例:
addCircleMarkers( #DOH data = ldh_geo, color = col_var, stroke = TRUE, weight = 0.5, opacity = 1, fillColor = misc_pal$vintageviolet, popup = ~paste( "<b>Area:</b>", `LWDA AREA (Office is located)`, "<br>" ), radius = dot_size, fillOpacity = 0.8, group = "Department of Health Facilities", options = pathOptions(pane = "markerPane") ) %>% addLegend( position = "topleft", colors = misc_pal$vintageviolet, labels = "DOH", # Add corresponding labels title = "DOH Offices", layerId = "overlaydoh", opacity = 0.8 )
备注:内容来源于stack exchange,提问作者LouisianaCodingNPC
相关产品推荐
相关产品推荐

