2013-07-10 164 views
2

我环顾四周,我似乎无法找到我在找什么。运行闪亮的应用程序内运行闪亮的应用程序

我在R闪光灯上创建了我的应用程序,一切都很好。我有12个不同的csv文件,每个文件都包含特定月份的信息。问题是,每个csv是72000 KB。所以现在,我只在1个月内阅读。 我在想创造的东西一server.R像

if(datasetInput() == "jan"){ 
    runApp("/file_for_jan") 
} 

if(datasetInput() == "feb"){ 
    runApp("/file_for_feb") 
} 

等。 这样,它只在当前的特定月份加载才能看到。 这是可能的吗? 或者你知道任何聪明,有效的方式来做这样的事情吗?

谢谢!

+0

您可以尝试将所有文​​件加载到内存中,例如添加'...请稍候 - 加载数据'进度栏。 – Fernando

回答

4

如果你正确地贯彻执行的代码,它会加载每个文件一次:

在server.R:

get.dataset = reactive(function(){ 
    month = input$month 
    read.csv(csv fot this month) 
}) 

output$plot_whatever = renderPlot(
function(){ 
    dataset = get.dataset(input$momth) 
    ...plot here 
}) 

所以,你可以一次加载所有的文件,或只装载需求(在此情况下,第一个电话会花费更长的时间)。

相关问题