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

7

我有一张地图,上面有许多不同的多边形,它们在很多点相互交叉,并且可能由于某些计算和绘图过程而随机地叠放在一起。

但是有一组多边形应该始终位于顶部,因为它们附加了弹出窗口。

不幸的是,任何像

leafletProxy("map") %>% showGroup("Layer1") %>% showGroup("Layer2")

或者

leafletProxy("map") %>% hideGroup("Layer1") %>% hideGroup("Layer2") %>% 
showGroup("Layer1") %>% showGroup("Layer2")

不会改变多边形的顺序。

leaflet包和shiny中是否有类似于bringToFront的功能?

1个回答

4

虽然这篇文章已经四年前的了,但我最近遇到了同样的问题,可以通过添加addMapPane来解决。在上面的例子中

leafletProxy("map") %>% addMapPane("layer1", zIndex=420) %>% addMapPane("layer2",zIndex=410)

这将确保无论在什么地方它们相交,层1都在层2的上方。然后只需要将层分配给你的多边形或其他物体即可。例如:

leafletProxy("map") %>% addPolygons(data=layer1_data,options = pathOptions(pane = "layer1")) %>% addPolygons(data=layer2_data, options= options = pathOptions(pane = "layer2"))

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接