在 Shiny 的 R 代码计算中使用反应输入
Use reactive input into R code calculations for Shiny
我有一个闪亮的应用程序从 ui 读取输入,但我无法在我的代码中跟进来自输入的数据。如下:
ui <- fluidPage(
...
selectInput("ISvModels", "Choose:",
choices = c(1000,5000)),
)
server <- function(input, output) {
vModels <- reactive({input$ISvModels})
qtModels <- length(vModels)
qtModels
vtModels <- paste0("M",1:qtModels," n = ",vModels," scenarios")
vtModels
}
我得到:
警告:as.vector 中的错误:无法将类型 'closure' 强制转换为类型 'character'
的向量
我尝试了从观察到渲染的各种方法,但没有任何效果。似乎我在这里遗漏了一些概念,希望您能提供帮助。谢谢!
您的服务器需要一个输出,以某种方式将您计算出的内容显示给用户。我们可以使用 textOutput
来实现这一点。
下面是一个最小的例子,显示了一个链接到文本框的下拉框。
library(shiny)
ui <- fluidPage(
#Dropdown
selectInput("ISvModels", "Choose:", choices = c(1000,5000)),
#Textbox
textOutput("mytext")
)
server <- function(input, output, session) {
#Prepare Textbox Content
output$mytext <- renderText({
qtModels <- length(input$ISvModels)
vtModels <- paste0("M", 1:qtModels, " n = ", input$ISvModels," scenarios")
return(vtModels)
})
}
shinyApp(ui, server)
我有一个闪亮的应用程序从 ui 读取输入,但我无法在我的代码中跟进来自输入的数据。如下:
ui <- fluidPage(
...
selectInput("ISvModels", "Choose:",
choices = c(1000,5000)),
)
server <- function(input, output) {
vModels <- reactive({input$ISvModels})
qtModels <- length(vModels)
qtModels
vtModels <- paste0("M",1:qtModels," n = ",vModels," scenarios")
vtModels
}
我得到:
警告:as.vector 中的错误:无法将类型 'closure' 强制转换为类型 'character'
的向量我尝试了从观察到渲染的各种方法,但没有任何效果。似乎我在这里遗漏了一些概念,希望您能提供帮助。谢谢!
您的服务器需要一个输出,以某种方式将您计算出的内容显示给用户。我们可以使用 textOutput
来实现这一点。
下面是一个最小的例子,显示了一个链接到文本框的下拉框。
library(shiny)
ui <- fluidPage(
#Dropdown
selectInput("ISvModels", "Choose:", choices = c(1000,5000)),
#Textbox
textOutput("mytext")
)
server <- function(input, output, session) {
#Prepare Textbox Content
output$mytext <- renderText({
qtModels <- length(input$ISvModels)
vtModels <- paste0("M", 1:qtModels, " n = ", input$ISvModels," scenarios")
return(vtModels)
})
}
shinyApp(ui, server)