我正在尝试从mrt
数据集中获取这组标记,使其以特定的缩放级别显示。我是r语言的新手,并希望对此提供一些建议。
我尝试使用应该使标记在特定缩放级别出现的if statement
。但这不起作用。
这是mrt
数据的示例
stn_code mrt_station lat lon
1 NS1 Jurong East 1.333131 103.7421
2 NS2 Bukit Batok 1.349064 103.7496
3 NS3 Bukit Gombak 1.359037 103.7518
4 NS4 Choa Chu Kang 1.385385 103.7443
5 NS5 Yew Tee 1.397329 103.7475
6 NS7 Kranji 1.425227 103.7620
这是呈现传单地图的代码部分。
output$mymap <- renderLeaflet({
leaflet(data=df()) %>%
addTiles() %>%
addPolygons(data=adm, weight = 3, fillColor = "white", popup=popup)%>%
addMarkers(clusterOptions = markerClusterOptions(),
label = paste(df()$address,',',df()$town))%>%
if (input$map_zoom>6){
addMarkers(data=mrt,lat = ~lat,lng = ~lon,label=mrt$mrt_station,icon = mrticon)
}
})
谢谢!
答案 0 :(得分:0)
仅从对代码的高层次审查中,您可能需要这里或至少为您提供了正确的方向。要获取更多帮助 ,您必须提供一个最低限度的工作示例 应用。 -
output$mymap <- renderLeaflet({
leaflet(data=df()) %>%
addTiles() %>%
addPolygons(data=adm, weight = 3, fillColor = "white", popup=popup)%>%
addMarkers(clusterOptions = markerClusterOptions(),
label = paste(df()$address,',',df()$town))
})
observe({
if(input$mymap_zoom > 6) {
leafletProxy("mymap", data = mrt) %>%
addMarkers(
lat = ~lat,
lng = ~lon,
label=mrt$mrt_station,
icon = mrticon,
layerID = "some_markers"
)
} else {
leafletProxy("mymap") %>%
clearMarkers("some_markers")
}
})