Im den folgenden Datenrahmen unter Verwendung eine glänzende Anwendung zu erstellen:Erstellen dynamische Eingabefelder für eine glänzende Anwendung
listIDs <- c(100,100,100,100,200,200,200,200),
values <- c(2.12, 2.43, 2.12, 4.45, 3.23, 4.23, 3.23, 4.23),
horses <- c(2.1, 3.2, 4.1, 4.2, 5.4, 4.7, 2.8, 2.0),
month <- c("JAN", "FEB", "JAN", "FEB","MAY","APRIL","MAY", "APRIL"),
df <- data.frame(listIDs, values, horses, month),
Im Gebäude eine glänzende Anwendung mit den folgenden Registern:
ui.R
shinyUI(fluidPage(
#outlinen title
titlePanel(title = "This is the title"),
sidebarLayout(
sidebarPanel(
selectInput("var1", "Select the eventID", choices = listIDs),
selectInput("var2", "Select the eventID", choices = month),
br()
),
mainPanel(("Personal information"),
plotOutput("myhist"))
)
))
server.R
library(shiny)
library(ggplot2)
shinyServer(function(input, output){
output$myhist <- renderPlot({
df_graph <- df[df$listIDs == input$var1,]
df_graph <- df_graph[df_graph$month == input$var2,]
ggplot(data=df_graph, aes(x=month, y=values, group = horses)) +
geom_line() + geom_point() + theme(axis.text.x = element_text(angle = 90, hjust = 1))
})
})
Alles funktioniert, aber die Sache ist, dass, wenn ich 100 in meiner ersten Auswahlbox wähle, ich die Optionen "JAN", "FEB", "MRT", "APRIL" bekomme (während ich nur JAN und FEB bekommen sollte). Irgendwelche Gedanken darüber, wie ich das dynamisch machen kann?
Mögliches Duplikat von [R shiny passing reaktiv zu selectInput Auswahlmöglichkeiten] (http://stackoverflow.com/questions/21465411/r-shiny-passing-reactive-to-selectinput-choices) –