R 在传单地图上绘制几个标记

R 在传单地图上绘制几个标记,r,leaflet,shiny,R,Leaflet,Shiny,嗨,我正在尝试学习如何在shiny上使用传单地图,我使用了以下示例: 以下是代码存储库: 我想通过将addMarker函数替换为addMarker来用标记替换圆 实际功能是: (Server.R的第98行) 我只是用以下内容来代替: map$addMarker( cities$Lat, cities$Long, row.names(cities) ) 但它只在数据框的第一个城市绘制标记。之后,如果你在地图上随机移动和缩放,一些其他的标记会出现 为什么addCircle为每个城市

嗨,我正在尝试学习如何在shiny上使用传单地图,我使用了以下示例:

以下是代码存储库:

我想通过将
addMarker
函数替换为
addMarker
来用标记替换圆

实际功能是: (Server.R的第98行)

我只是用以下内容来代替:

map$addMarker(
  cities$Lat,
  cities$Long,
  row.names(cities)
)
但它只在数据框的第一个城市绘制标记。之后,如果你在地图上随机移动和缩放,一些其他的标记会出现

为什么
addCircle
为每个城市绘制一个圆圈,而
addMarker
的行为是“随机的”

如何在绘图上同时绘制多个标记?
循环波纹管工作,但理想情况下,如果可能的话,我不想手动循环

for(i in 1:nrow(cities)){
    map$addMarker(
      cities$Lat[i],
      cities$Long[i],
      i
    )
}

谢谢

我也遇到了同样的问题,因为你去掉了半径。通过查看函数createFlashMap的代码,我们可以看到addCircle需要以下参数:

addCircle(lat, lng, radius, layerId = NULL, options=list(), eachOptions=list())
它真的需要半径。要解决您的问题,只需写下:

map$addMarker(
  cities$Lat,
  cities$Long,
  100,
  row.names(cities)
)
map$addMarker(
  cities$Lat,
  cities$Long,
  100,
  row.names(cities)
)