2016-05-13 107 views
-1

我在一個閃亮的應用程序中使用的leafletmap上繪製了一個Polygon。 每次發生事件時,我想刪除舊的多邊形並在其上繪製新的多邊形。 那不行 - 我假設我用layerId錯了?從Leafletmap R/Shiny中刪除多邊形

對此有何暗示?

# 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) 
    ) 
}) 

回答

1

所以,我去吧。 在對象上使用圖層ID並再次使用該圖層ID繪製同一對象時,該對象將被刪除。

所以,這是不夠的:

observeEvent(da$ar, { 

    leafletProxy("myMap") %>% addPolygons(data = da$ar, stroke = TRUE, 
    fillOpacity = 0.5, smoothFactor = 0.5, 
    layerId = "foo" 
    ) 
})