我正在创建一个带有已定义区域的传单地图,我已经使用了当鼠标移过它时返回有关该区域的信息的事件,但现在我想使地图动态化并突出显示指针所在的多边形。我想我应该在observeEvent中使用leafletproxy(),但是现在我无法使它工作。
答案 0 :(得分:0)
像this之类的东西?它会变得有点复杂,但基本上你会想要添加一个函数,该函数作为参数是否应该加粗。在示例中,它将是drawStates()
。
简化的想法是:
如果没有你的代码我就不能说其他话。
答案 1 :(得分:0)
我想过每次鼠标移过新的多边形时重新创建地图,但首先我不太了解addPolygons选项如何在传单中工作以及如何定义多边形(我使用的是包"地图"已经设计好了)。以下是构建地图的代码部分:
output$prodmap <- renderLeaflet({
pal <- colorQuantile("Reds",domain = mapdata(),na.color = "grey", probs = 0.2)
palleg <- colorNumeric("Reds",domain=mapdata(),na.color = "grey")
map=leaflet(data = mapStates(),width =500 , height =800 ) %>% addTiles() %>%
addPolygons(fillColor = ~pal(mapdata()) , color="black",weight=1 , fillOpacity = 0.7) %>%
addLegend("topleft", pal = palleg, values = mapdata(),
title = "Production 2014 :",
labFormat = labelFormat(suffix= " q/ha"),
opacity = 1 )
return(map)
})
reg=reactive({
return(
reg=map.where(database = "france", input$prodmap_shape_mouseover[4],input$prodmap_shape_mouseover[3]))})
所以&#34; mapdata()&#34;返回一个按区域排序数据的向量,现在我使用map.where()和mouseover事件来创建一个返回该区域名称的被动反应。我想我应该写一个反应,为指针的每个位置创建一个新的地图,但我怎么能添加一个新的多边形与该区域的名称或坐标?
谢谢