这似乎应该很容易做到,所以我可能犯了一个简单的错误,但我花了很多时间在这上面却没有任何成功。
我从下拉框中选择一个值,并希望从列表中取回相应的元素。我现在已经将它简化为一些非常简单的代码,但它仍然无法正常工作。我希望得到输出"测试:一个1","测试:两个2"或者"测试:三个3",但只得到"测试:1","测试:2"或"测试3"。
R 3.0.2,shiny_0.10.1
示例:
ui.R
library(shiny)
shinyUI(fluidPage(
titlePanel("test"),
sidebarLayout(
sidebarPanel(
selectInput("number", label = h3("Select"),
choices = list("First" = 1, "Second" = 2, "Third" = 3), selected = 1)
),
mainPanel(
textOutput("text1")
))))
Server.R
# server.R
shinyServer(function(input, output) {
output$text1 <- renderText({
test<-list("one","two","three")[[input$number]]
paste("test:",test,input$number)
})
})
答案 0 :(得分:1)
您需要重新设定input$number
:
shinyServer(function(input, output) {
output$text1 <- renderText({
test<-list("one","two","three")[[as.integer(input$number)]]
paste("test:",test,input$number)
})
})