Action按钮,observeEvent,非变量R对象(list,matrix,data.frame等)

时间:2017-09-28 15:38:00

标签: r shiny

我想出了如何在预先指定的非反应变量上触发actionButton。我在这里找到了一个非常好的解决方案:

Action button and observeEvent

但是,如何预先指定列表,矩阵,data.frame或更复杂的R对象?是否可以以上述链接中建议的类似方式使用它们?谢谢!

1 个答案:

答案 0 :(得分:0)

这是你要找的吗?

library(shiny)

ui <- fluidPage(
  actionButton("go", "Click me"),
  helpText("All values in the table below are incremented ",
    "each time you press the button"),
  tableOutput("tbl")
)

server <- function(input, output, session) {
  x <- reactiveVal(data.frame(matrix(c(1,2,3,4), nrow = 2)))

  observeEvent(input$go, {
    x(x() + 1)
  })

  output$tbl <- renderTable({
    x()
  })
}

shinyApp(ui, server)

如果这还不够,还有一个非官方的构造(使用“反应式触发器”功能),这是这个简单的demo Shiny app的基础。