R 在mapdeck中添加多边形可缩小地图

R 在mapdeck中添加多边形可缩小地图,r,shiny,mapdeck,R,Shiny,Mapdeck,当我将一个简单的贴图添加到我的闪亮应用程序中时,没有添加多边形,“缩放”参数会正常工作,贴图会按其应该的方式初始化 另一方面,当我使用add_polygon()添加多边形时,贴图初始化时会比应该放大的更多 为什么会这样 这是我的代码: library(mapdeck) library(sf) sf = st_as_sf(my_LargeSpatialPolygonDataframe) output$my_map = renderMapdeck({ mapdeck(token = m

当我将一个简单的贴图添加到我的闪亮应用程序中时,没有添加多边形,“缩放”参数会正常工作,贴图会按其应该的方式初始化

另一方面,当我使用add_polygon()添加多边形时,贴图初始化时会比应该放大的更多

为什么会这样

这是我的代码:

library(mapdeck)
library(sf)

sf = st_as_sf(my_LargeSpatialPolygonDataframe)

output$my_map = renderMapdeck({

    mapdeck(token = mytoken, location = c(a, b), zoom = 12,
            bearing = -45.00, pitch = 0, style = 'mapbox://styles/mapbox/light-v9') %>%

    add_polygon(data = sf,
                stroke_colour = "#000000",
                stroke_width = 20,
                stroke_opacity = 200,
                fill_opacity = 0,
                layer = "init_polygons")
})


当您通过一个
添加功能添加图层时,该图层将计算所需的缩放级别,以适应窗口框架中的整个数据。您可以使用
update\u view=FALSE

这里有一个可复制的例子

在mapdeck()中设置位置 这里的
add_polygon()
图层将重新缩放地图以显示图层中的所有数据。这就是你看到的行为

library(mapdeck)

set_token("MAPBOX_TOKEN")

mapdeck(
  location = c(144.9, -37.8)
  , zoom = 11
  , bearing = -45.00
  , pitch = 0
  , style = mapdeck_style("light")
  ) %>%
  add_polygon(
    data = spatialwidget::widget_melbourne
    , stroke_colour = "#000000"
    , stroke_width = 20
    , stroke_opacity = 200
    , fill_opacity = 0
    , layer_id = "init_polygons"
    )

使用update\u view=FALSE 这会告诉图层不要更新视图,因此将使用原始的
location()

mapdeck(
  location = c(144.9, -37.8)
  , zoom = 11
  , bearing = -45.00
  , pitch = 0
  , style = mapdeck_style("light")
  ) %>%
  add_polygon(
    data = spatialwidget::widget_melbourne
    , stroke_colour = "#000000"
    , stroke_width = 20
    , stroke_opacity = 200
    , fill_opacity = 0
    , layer_id = "init_polygons"
    , update_view = F
    )

关于提出一个人们可以帮助解决的问题。这包括一个数据样本、所有必要的代码以及您正在使用的包(
sf
?)