Leaflet JS有一个插件,可以在图层控件中对图层进行分组。https://github.com/ismyrnow/Leaflet.groupedlayercontrol
Leaflet R似乎不存在此插件,但我发现这篇文章说,Leaflet R中有一种使用仲裁的Leaflet JS插件的方法 。https://gist.github.com/jcheng5/c084a59717f18e947a17955007dc5f92
我试图将此方法应用于Leaflet.groupedlayercontrol插件,但未成功。您是否知道如何使用此插件或任何其他方式在Leaflet R生成的layercontrol中对图层进行分组?谢谢。
你绝对可以在leafletR中进行图层控制。如果您的版本没有它,那么您需要更新,可能是从最新的 GITHUB 版本。
我现在正在制作具有图层控件的地图,请参阅照片。这是实现它的代码。正如您所看到的,每个addPolygons都有一个group = " A Name"这是您在我的图像上的复选框中识别图层的地方。
map<-leaflet()%>%
addTiles()%>%
addPolygons(data = plotMerge,
fillColor = ~pal(plotMerge$incomePerCapita),
color = "#000000", #this is an outline color
fillOpacity = 0.8,
group="Tract",
weight = 0.2,
popup=popup)%>%
addPolygons(data = countyPoly,
fillColor = "transparent",
color = "#000000", #this is an outline color
fillOpacity = 0.8,
group="County",
popup=countyPoly@data$NAME,
weight = 2)%>%
addPolygons(data = townPoly,
fillColor = "transparent",
color = "#000000", #this is an outline color
fillOpacity = 0.8,
group="Town",
weight = .8,
popup=townPoly@data$TOWN)%>%
addPolygons(data = rphnPoly,
fillColor = "transparent",
color = "#000000", #this is an outline color
fillOpacity = 0.8,
group="Public Health Region",
weight = .8,
popup=rphnPoly@data$PHN)%>%
addLegend(pal = pal,
values = plotMerge$incomePerCapita,
position = "bottomright",
title = "State-wide Income Percentiles",
labFormat = labelFormat(digits=1))%>%
addLayersControl(
overlayGroups =c("County", "Town", "Public Health Region", "Tract"),
options = layersControlOptions(collapsed=FALSE)
)
saveWidget(map, file="map1.html", selfcontained=FALSE)
Run Code Online (Sandbox Code Playgroud)
您还可以添加其他控件,请在此处查看: