我对R Shiny中的输入和输出功能感到困惑。我需要根据选择输入下的输入来绘制词干函数并显示忠实数据集的摘要表。但是下面没有获取我需要的结果。请指教
library(shiny)
ui <- fluidPage(
sidebarLayout(
sidebarPanel(selectInput("x","Operations",choices = c("summary","stem")),
plotOutput("x")),
mainPanel(h6("Here it is"),
tableOutput("message")
)
)
)
server <- function(input, output, session) {
output$message <- renderPlot({
faithful
})
output$x <- reactive({
if(input$x == "summary")
{
summary(faithful$eruptions)
}
else if (input$x == "stem")
{
stem(faithful$eruptions)
}
)
})
}
shinyApp(ui, server)
答案 0 :(得分:0)
我是Shiny的新手,所以以下只是我的经验。首先,我认为您应该将if
的条件放在message
的输出中。其次,使用renderPrint
呈现摘要输出。
library(shiny)
ui <- fluidPage(
sidebarLayout(
sidebarPanel(selectInput("x","Operations",choices = c("summary","stem")),
uiOutput("x")),
mainPanel(h6("Here it is"),
verbatimTextOutput("message")
)
)
)
server <- function(input, output, session) {
# output$message <- renderUI({
# faithful
# })
output$message <- renderPrint({
if(input$x == "summary")
{
summary(faithful$eruptions)
} else if (input$x == "stem")
{
print(stem(faithful$eruptions))
}
})
}
shinyApp(ui, server)