小编pit*_*ead的帖子

在 Shiny 中使用传单绘制多个多边形

我正在努力在 Shiny 应用程序中绘制多个多边形 - 基于传单包。

这是我希望的非应用程序输出:

data <- list(
    beam1 = data.frame(lat = c(-115,-125, -125, -115),
               lon = c(32, 32, 45,45)),
    beam2 =     data.frame(lat = c(-100, -111, -111, -100),
                           lon = c(42, 42, 50,50))
)
dataTemp <- do.call(rbind, lapply(data, function(x) rbind(x, NA)))

library(leaflet)
m = leaflet() %>% addTiles()
m %>%
    addPolygons(
        dataTemp[,"lat"],
        dataTemp[,"lon"],
        color = c('red', 'green'), weight = 3
    )
Run Code Online (Sandbox Code Playgroud)

然而,事实证明,用它创建一个 Shiny 应用程序是很困难的 - 多边形被绘制出来,然后一旦绘制了一个新的多边形就一个一个地消失。这是我正在使用的代码。您需要单击“绘制”来绘制多边形 注意如何: 1 - 绘制绿色时红色多边形消失(3 秒后) 2 - 此处的多边形是三角形,而在上面的代码中它们是矩形。3 - 如果您查看下面 server.R 中的代码,我实际上不得不翻转“lat”和“lon”列才能获得远程正确的图片。

用户界面:

library(shiny) …
Run Code Online (Sandbox Code Playgroud)

r polygons leaflet shiny shiny-server

5
推荐指数
1
解决办法
4132
查看次数

标签 统计

leaflet ×1

polygons ×1

r ×1

shiny ×1

shiny-server ×1