R Auto Zoom 在 Shiny 中更新了 leafletProxy Map 对象

标签 r shiny leaflet

我正在为 Shiny 中的一些 map 试验 leaflet 包。我希望能够有一个 basemap ,数据将发生变化并随后重新映射。但是,我正在尝试使用 leafletProxy 函数,其中有一个 basemap ,我只是更改添加的数据点。所有这些都有效,但是 map 不会缩放到数据点位置。它保持在最远的变焦。

enter image description here

重现问题的代码:

library(shiny)
library(leaflet)

r_colors <- rgb(t(col2rgb(colors()) / 255))
names(r_colors) <- colors()

ui <- fluidPage(
  leafletOutput("mymap"),
  p(),
  actionButton("goButton", "New Points")
)

server <- function(input, output, session) {

  output$mymap <- renderLeaflet({
    leaflet() %>%
      addProviderTiles("Stamen.TonerLite",
                       options = providerTileOptions(noWrap = TRUE)
      )
  })

  observeEvent(input$goButton, {
    points <- cbind(rnorm(40) * 2 + 13, rnorm(40) + 48)

    leafletProxy('mymap', session) %>%
      clearMarkers() %>%
      addMarkers(data = points)
  })
}

shinyApp(ui, server)

我希望 map 在添加新点后自动放大。

最佳答案

尝试在 leafletProxy() 中添加参数“fitBounds”

leafletProxy('mymap', session) %>%
  clearMarkers() %>%
  addMarkers(data = points) %>%
  fitBounds(lng1 = max(points$long),lat1 = max(points$lat),
            lng2 = min(points$long),lat2 = min(points$lat))

关于R Auto Zoom 在 Shiny 中更新了 leafletProxy Map 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33216686/

相关文章:

r - 使用 dplyr::rename() 处理列名称中的空格和 "weird"字符

RStudio Shiny 动态选择

javascript - 如何在传单控件搜索结果上显示 2 个值(工具提示)

Leaflet 自定义图标,react-leaflet,无法构建 Gatsby 项目

r - 从 R 中的列表构建嵌套命名列表

rvest 表抓取,包括链接

r - Shiny 的传单鼠标悬停弹出窗口

reactjs - 如何使用react-leaflet添加或删除层

r - 更改绘图 geom_polygon、ggplot 的顺序

r - 邮件R : Sending mail to multiple addresses from shiny