从Leafletmap R/Shiny中删除多边形

问题描述 投票:0回答:1

我在传单地图上绘制了一个多边形,我在一个闪亮的应用程序中使用它。 每次触发事件时,我想删除旧的多边形并在其上绘制新的多边形。 这不起作用 - 我想我使用

layerId
错了?

这方面有什么提示吗?

# draw polygons
observeEvent(da$ar, {
    # remove polygon
    removeShape(map, layerId = unique(10))

    leafletProxy("myMap") %>% addPolygons(data = da$ar, stroke = TRUE, 
    fillOpacity = 0.5, smoothFactor = 0.5,
    layerId = unique(10)
    )
})
r shiny leaflet polygon polygons
1个回答
5
投票

那么,我就去吧。 当您在对象上使用图层 ID 并再次使用该图层 ID 绘制相同的对象时,该对象将被删除。

所以,这就足够了:

 observeEvent(da$ar, {
    leafletProxy("myMap") %>% addPolygons(data = da$ar, stroke = TRUE, 
    fillOpacity = 0.5, smoothFactor = 0.5,
    layerId = "foo"
    ) 
 })
© www.soinside.com 2019 - 2024. All rights reserved.