如何在 Shiny Leaflet 地图中将图层置于顶部

Seb*_*BFE 6 r leaflet shiny

我有一张地图,上面有不同的多边形,它们在很多点处相交,并且由于一些计算和绘图过程,它们可以随机地在彼此之上。但是有一组多边形应该总是在顶部,因为它们有附加的弹出窗口。

不幸的是像

leafletProxy("map") %>% showGroup("Layer1") %>% showGroup("Layer2")
Run Code Online (Sandbox Code Playgroud)

或者

leafletProxy("map") %>% hideGroup("Layer1") %>% hideGroup("Layer2") %>% 
showGroup("Layer1") %>% showGroup("Layer2")
Run Code Online (Sandbox Code Playgroud)

不会改变多边形的顺序。

包和有什么bringToFront可能吗?leafletshiny

小智 5

意识到这个问题已经有四年了,但我刚刚遇到了同样的问题,并且可以使用 addMapPane 来解决。在上面的例子中

leafletProxy("map") %>% addMapPane("layer1", zIndex=420) %>% addMapPane("layer2",zIndex=410)
Run Code Online (Sandbox Code Playgroud)

这将使层 1 在它们相交的任何地方都保持在层 2 之上。那么这只是将图层分配给多边形或其他任何东西的问题。例如:

leafletProxy("map") %>% addPolygons(data=layer1_data,options = pathOptions(pane = "layer1")) %>% addPolygons(data=layer2_data, options= options = pathOptions(pane = "layer2"))
Run Code Online (Sandbox Code Playgroud)