use*_*810 5 action button shiny shiny-server
嗨,我想创建一个闪亮的 UI,用户可以将数据集的名称输入到文本框中,比如“testdataset”。然后通过单击和操作按钮选择此(示例)分析 1 或分析 2 中的特定过程。一旦发生这种情况,我希望文本框显示原始数据集名称以及选择的分析,即“testdataset-analysis1”。我已经在下面构建了示例 UI,但我是 R 的新手,并且闪亮,并且不知道如何捕获事件并在 UI 和服务器之间传递变量并呈现它们。有人可以帮忙吗?
我想实现
图书馆的例子(闪亮)
#====shiny UI
shinyUI(pageWithSidebar(
headerPanel("Shiny action button input "),
sidebarPanel(
textInput(inputId="data1", label = "Input data name"),
actionButton("Ana1", "analysis1"),
actionButton("Ana2", "analysis2")
),
mainPanel(
#
)
))
#====shiny server
shinyServer(
function(input, output) {
output$data1 <- renderText({input$data1})
})
}
)
runApp()#to run application
Run Code Online (Sandbox Code Playgroud)
这不是一个完整的答案,但最好自己尝试一下。一般来说,用于updateTextInput更新文本,用于observeEvent观察按钮上的点击动作,用于input$name捕捉输入值,output$name <- render...用于设置输出。updateInput您可以在官方 Shiny 参考中找到几种方法。http://shiny.rstudio.com/reference/shiny/latest/
例如,在您的服务器代码中
function(session, input, output) {
observeEvent(input$Ana1, {
name <- paste(input$data1, "analysis 1")
updateTextInput(session, "data1", value=name)
}
}
Run Code Online (Sandbox Code Playgroud)