【发布时间】:2017-05-03 17:20:54
【问题描述】:
我正在尝试开发一个带有*Input() 函数的闪亮应用程序,其输出取决于服务器中计算的一些结果。您可以在下面找到示例代码:
library(shiny)
library(shinydashboard)
ui <- dashboardPage(
dashboardHeader(),
dashboardSidebar(
sliderInput("mpg", "Mpg", min(mtcars$mpg), max(mtcars$mpg),
c(min(mtcars$mpg), max(mtcars$mpg)), ticks = FALSE, step = 1),
uiOutput("cyl")
),
dashboardBody(
tableOutput("out")
)
)
server <- function(input, output) {
data_filtered_by_mpg <- reactive({
filter(mtcars, mpg >= min(input$mpg),
mpg <= max(input$mpg))
})
output$cyl <- renderUI({
selectInput("cyl", "Cyl", choices = data_filtered_by_mpg()$cyl,
selected = data_filtered_by_mpg()$cyl[1])
})
output$out <- renderTable(data_filtered_by_mpg())
}
shinyApp(ui, server)
这里的问题是选择列表的选定输入不是data_filtered_by_mpg()$cyl向量的第一个元素而是""。你有什么建议吗?
【问题讨论】: