R Shiny:googleway软件包-在更新过程中关闭自动缩放和平移

时间:2018-07-31 12:36:41

标签: r shiny googleway

使用googleway R package with Shiny并使用google_map_update和update_heatmap更新地图。

在调用google_map_update的过程中是否可以保持相同的缩放级别和位置-当前它会缩小并在点更改坐标时自动平移,这很令人头疼-可以将其关闭吗?

下面的代码来自链接,其中滑块已打开自动功能。放大地图,然后进行动画处理,您会看到自动缩放和平移。

library(shiny)
library(googleway)

ui <- fluidPage(
  sliderInput(inputId = "sample", label = "sample", min = 1, max = 10,
              step = 1, value = 10, animate = TRUE),
  google_mapOutput(outputId = "map")
)

server <- function(input, output){

  map_key <- ''

  set.seed(20170417)
  df <- tram_route[sample(1:nrow(tram_route), size = 10 * 100, replace = T), ]

  output$map <- renderGoogle_map({
    google_map(key = map_key) %>%
      add_heatmap(data = df, lat = "shape_pt_lat", lon = "shape_pt_lon",
                  option_radius = 0.001)
  })

  observeEvent(input$sample,{

    df <- tram_route[sample(1:nrow(tram_route), size = input$sample * 100, replace = T), ]

    google_map_update(map_id = "map") %>%
      update_heatmap(data = df, lat = "shape_pt_lat", lon = "shape_pt_lon")
  })
}

shinyApp(ui, server)

1 个答案:

答案 0 :(得分:2)

当然!

使用update_map_view = FALSE


文档

?update_heatmap

  

update_map_view-逻辑指定地图是否应根据形状重新居中


示例

google_map_update(map_id = "map") %>%
  update_heatmap(
    data = df
    , lat = "shape_pt_lat"
    , lon = "shape_pt_lon"
    , update_map_view = F
  )

事实上,我现在建议始终使用update_map_view = FALSE,因为它(对于浏览器)具有更高的内存效率,因为您不会不断更新地图“边界”的数组。但是我还没有在任何地方正式记录下来。