r语言 - 如何更改地图视图的主要数据



我正在尝试使用observeEvent()将Mapview的x参数更改为新数据。我通常只使用clearShapes(),然后使用addPolygons(),但需要zcol等参数。

我想做一些类似于以下的事情:

server <- function(input, output) {
output$DisplayMap <- renderLeaflet(
mapview(first_data, zcol = coolCol, color = brewer.pal(12, "Set3") %>%
addControl(actionButton("Next", ">"), position = "topright")
)
observeEvent(input$Next, {
output$DisplayMap$x <- next_data  # This doesn't work
})
}

我意识到有两个问题在起作用(一个更改变量的接口和一种方法(,其中一个可能需要以某种形式或另一种进行React

我认为这样修改输出是不可能的(但事实上,使用MRE会更容易(。

你应该考虑这样的事情:

server <- function(input, output) {
my_data <- reactiveVal(data.frame(a = 1, b = 2))
output$DisplayMap <- renderLeaflet(
mapview(my_data()[[input$Next]], zcol = coolCol, color = brewer.pal(12, "Set3") %>%
addControl(actionButton("Next", ">"), position = "topright")
)
}

假设input$Next是用户可以在GUI中选择的列的名称。这只是向你展示一个想法。如果你仍然需要帮助,请发送MRE,我可以编辑这个答案。

相关内容

  • 没有找到相关文章

最新更新