R闪亮,根据输入加载数据

时间:2014-03-24 14:32:14

标签: r shiny

我在服务器端拥有每天的数据,并希望根据日期输入加载数据

在服务器端,我有这个:

 dateInput("date","Enter a date:",value = "2014-01-13"))

在UI方面,

library(shiny)
library(googleVis)
library(rpart.plot)

load("data_2014_01_13_new.RData")  #seg and fit are data in this file
shinyServer(function(input, output) {
    output$values <- renderGvis({
      gvisTable(seg[seg$rate >= input$test[1] & seg$rate <= input$test[2],])
    })
    output$plot <- renderPlot({
     prp(fit,extra=T)
    })
})

我想将加载放入服务器功能,并可以在日期更改时加载不同的数据。谢谢!

1 个答案:

答案 0 :(得分:3)

阅读教程中的这些页面:

您可以将load调用shinyServer调用到另一个reactive中,以便您可以动态引用数据集,并且每个会话可以同时加载不同的数据。

因此,在shinyServer函数中添加这样的函数(请注意,您可能需要按下日期输入字符串的格式,以使其与文件的命名方式兼容)。

dataset <- reactive({
  filename <- paste0("data_", input$date, ".Rdata")
  load(filename)
})

然后,您可以在dataset()的其他位置引用server.R,以获取此用户数据集的相应值。