【问题标题】:How to update default csv data with action button in Shiny?如何使用 Shiny 中的操作按钮更新默认 csv 数据?
【发布时间】:2016-12-02 03:19:06
【问题描述】:

我的应用程序需要很长时间来计算,所以在第一次加载时,我希望闪亮使用保存为 csv 文件的默认数据。但是,我希望用户能够通过按下操作按钮来更新这些数据(以及结果图)。我尝试了一些配置。以下是使用 observeEvent 的简化版本。

服务器.R

default_data <- read.csv("./default_data.csv")

function(input, output) {

  # Load default
  data <- reactive(default_data)

  # I wish this could get it to update
  observeEvent(input$goButton, {
    data <- rnorm(100, input$recid_rate)
  })

  # Plot
  output$plot <- renderPlot({

    hist(data())

  })

}

我把它放在默认数据加载的地方,并在 ggplot 中显示。但操作按钮似乎不会覆盖默认数据。提前感谢您的想法!

【问题讨论】:

    标签: r shiny


    【解决方案1】:

    您的问题是 data 应该响应 2 个不同的 reactive 语句并且不知道该怎么做。 Here 是一个相关问题。

    解决此问题的一种方法是创建一个保存数据的reactiveValues 对象:

    rv<-reactiveValues(data=default_data)
    

    然后用observeEvent更新它:

     observeEvent(input$goButton, {
        rv$data <- rnorm(100, input$recid_rate)
      })
    

    并将其用于情节:

     output$plot <- renderPlot({
        hist(rv$data)
      })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-05-03
      • 2018-01-26
      • 2019-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多