1
我已經得到了錯誤在閃亮的反應函數中使用SpatialPolygonDataFrame時出錯。
Error in states() <- reactive({ : invalid (NULL) left side of assignment
,當我創建一個閃亮的帶班SpatialPolygonsDataFrame返回對象反應功能。我舉了一個例子來說明這一點。
我可以單獨在小冊子中工作。並且,
我可以把整個對象放在一張閃亮的小冊子地圖中。
但是,如果你把它放在一個反應函數中,它會給出錯誤。我如何將這些空間物體加入閃亮的區域以傳遞給閃亮的傳單?
library(leaflet)
library(sp)
library(rgeos)
library(rgdal)
library(shiny)
# From https://www.census.gov/geo/maps-data/data/cbf/cbf_state.html
# Get the 20m file, unzip and put in your working directory.
states <- readOGR("cb_2014_us_state_20m.shp",
layer = "cb_2014_us_state_20m", verbose = FALSE)
neStates <- subset(states, states$STUSPS %in% c(
"CT","ME","MA","NH","RI","VT","NY","NJ","PA"
))
leaflet(neStates) %>%
addPolygons(
stroke = FALSE, fillOpacity = 0.5, smoothFactor = 0.5,
color = ~colorQuantile("YlOrRd", states$AWATER)(AWATER)
)
ui <- shinyUI(bootstrapPage(
tags$style(type = "text/css", "html, body {width:100%;height:100%}"),
leafletOutput("map", width = "100%", height = "100%"),
absolutePanel(class = "panel panel-default",
top = 1, right = 1, width = 300,
selectInput("which_state","which state",
c("CT","ME","MA","NH","RI","VT","NY","NJ","PA"))
)))
#input <- list(which_state = "CT")
server <- function(input, output) {
states() <- reactive({
subset(neStates,neStates$STUSPS == input$which_state)
})
output$map <- renderLeaflet({
leaflet() %>%
addPolygons(states())
#addPolygons(data = neStates)
})
}
shinyApp(ui,server)