Ich versuche herauszufinden, wie die über selectInput auf der UI-Seite ausgewählten Variablen verwendet werden, um die Kartendaten auf der Serverseite aufzufüllen. Obwohl es mir gelungen ist, Variablen manuell so festzulegen, dass sie über filteredData angezeigt werden, funktioniert sie nicht ordnungsgemäß für Eingaben, die sich dynamisch ändern können. Gibt es eine Funktion/Lösung, die dazu beitragen kann, dass die Daten basierend auf Benutzereingaben auf der Karte angezeigt werden?Übergeben von SelectInput-Werten zum Zuordnen
UI.R
districts <- readOGR("location",layer)
metadata <- read.csv("metadata.csv")
#Prepare list of values for the selectInput boxes
COMMUNITYSAFETY<-as.list(metadata$variable[metadata$group == "Community Safety"])
names(COMMUNITYSAFETY)=metadata$description[metadata$group == "Community Safety"]
##CONTINUED FOR REST OF SELECTINPUT BOXES
ui <- fluidPage(
titlePanel("Map"),
sidebarPanel(
selectInput("vr", "Would you like to show the variable by value or rank?",
c("Value" = "_v",
"Rank" = "_r")
),
selectInput("group", "Select Group:",
c("Community Safety" = "COMMUNITYSAFETY",
"Demographics" = "DEMOGRAPHICS",
"Healthy People and Environments" = "HEALTHY_PEOPLE_ENVM",
"Housing" = "HOUSING",
"Income and Employment" = "INCOME_EMPL",
"Lifelong Learning" = "LIFE_LEARNING",
"Transportation" = "TRANSPORTATION")),
#if user choses Community Safety
conditionalPanel(
condition = "input.group == 'COMMUNITYSAFETY'",
selectInput("var", "Community Safety Variables:",
COMMUNITYSAFETY)),
#repeat other conditional panels for inputs
mainPanel(
tabsetPanel(
tabPanel("Map", leafletOutput("map", height=800)),
tabPanel("Histogram")
))))
Server.R:
server <- function(input, output, session){
filteredData <- reactive({
subset(districts,select=input$var)
})
...
observe({
leafletProxy("map", data=districts) %>%
addPolygons(stroke=TRUE,
fillColor=pal(filteredData()),
color="black",
weight=.5)
})
}