我正在尝试使用在闪亮的应用程序中使用 R 创建的传单地图来可视化从出发地到目的地的装运。
我想添加一个半径的圆形标记,该标记对应于来自名为main()的反应数据框的odist和ddist变量
下面是一个相关的快照和随附的代码:
output$leaflet1 <- renderLeaflet({
leaflet() %>%
addCircleMarkers(data = main(), lng = main()$Olong, lat = main()$Olat, color = 'black', fillColor = coyGreen,
radius = main()$odist, opacity = .5) %>%
addCircleMarkers(data = main(), lng = main()$Dlong, lat = main()$Dlat, color = 'black', fillColor = coyGreen,
radius = main()$ddist, opacity = .3)
})
Run Code Online (Sandbox Code Playgroud)
对于上面的例子,参数radius = main()$odist
等价于radius = 50
。然而,这 50 个单位似乎是任意的(圆比大的小,radius = main()$ddist = 125
但随着我放大和缩小,两个圆都会放大和缩小)。我希望能够将我的圆形标记的半径设置为以英里为单位的固定半径,但是我一直无法弄清楚如何这样做。任何帮助是极大的赞赏!
如果您使用addCircles
而不是addCircleMarkers
您的圈子将具有常数radius
(以米为单位)。这是一个使用mapview的可重现示例,它使用addCircleMarkers
. 在顶部,我们使用绘制相同的位置addCircles
library(mapview)
m <- mapview(breweries91) # uses addCirclemarkers so circle radius changes with zoom
m@map %>%
addCircles(data = breweries91, color = "red", radius = 100) # circle radius constant
Run Code Online (Sandbox Code Playgroud)
如果放大,您会看到最初较小的红色圆圈相对于mapview 中使用的标准蓝色圆圈标记会变大
归档时间: |
|
查看次数: |
7687 次 |
最近记录: |