Shiny& Leaflet:使用多边形

时间:2018-03-03 14:59:07

标签: r shiny leaflet

我想在一个集成在Shiny中的传单地图中添加一个多边形。

我首先使用以下代码将一个闪亮的应用程序上传到shinyapps.io:

V1:没有多边形

library(shiny)
library(leaflet)

rsconnect::setAccountInfo(name='x', token='x', secret='x')


#Define leaflet characteristics and schemes

ui <- fluidPage(
  leafletOutput("map")
)

server <- function(input, output) {
  output$map <- renderLeaflet({
    leaflet() %>%
      addProviderTiles(providers$OpenStreetMap.BlackAndWhite, 
options=tileOptions(minZoom=11, maxZoom=18)) %>% 
      setView(-2.959761, 53.404049, 11) 
  })
}

shinyApp(ui, server)

闪亮的应用程序可以在本地加载,也可以上传到全局。 当我添加polygon.shp时,我可以在我的计算机上本地运行应用程序但是当我将其上传到shinyapps.io时,会收到错误。

我认为这不仅仅是提供 .shp而是提供.dbf,.prj&amp; .shx

请有人提供解决方案,这样我就可以将带有多边形的应用上传到shinyapps.io

V2:使用多边形

library(shiny)
library(leaflet)
library(rgdal)

rsconnect::setAccountInfo(name='x', token='x', secret='x')

IMD <- readOGR('./E08000012.shp')
IMD <- spTransform(IMD, CRS("+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs"))

#Define leaflet characteristics and schemes

ui <- fluidPage(
  leafletOutput("map")
)

server <- function(input, output) {
  output$map <- renderLeaflet({
    leaflet() %>%
      addProviderTiles(providers$OpenStreetMap.BlackAndWhite, 
options=tileOptions(minZoom=11, maxZoom=18)) %>% 
      setView(-2.959761, 53.404049, 11) %>%

      addPolygons(data=jan, 
                  fillColor = ~pal(IMD$imd_score),
                  weight = 0.2,
                  opacity = 1,
                  color = "white",
                  dashArray = "0.1",
                  fillOpacity = 1)

  })
}

shinyApp(ui, server)

0 个答案:

没有答案