如何在Web上部署时使Shiny App使用环境变量?

时间:2014-09-03 22:51:32

标签: r shiny

几个小时我一直在努力。我的Shiny App应该显示我在R环境中的一些变量。它的工作正常,但是当我将它部署到网络上时,我得到的错误如下:

Error: object 'df1' not found

如何添加df1和我的其他数据框,以便在部署时将其打包为Shiny App的一部分?

请帮忙。这是我的示例代码:

server.R

library(shiny)

shinyServer(function(input,output){
output$datasets <- renderTable({
switch(input$choice,

         "1" = as.data.frame(df1)          
         "2" = as.data.frame(df2) })
  }))

UI.R

shinyUI(
fluidPage(theme = "bootstrap.css",

sidebarPanel(        
  conditionalPanel(
    condition = "input.theTab == 'datasets' ",
    h3('Display Sample Data'),    
    selectInput("choice", "Selection", choices = c("Group1"=1,"Group2"=2)),

  )),

mainPanel(
  tabsetPanel(
    tabPanel( "datasets", tableOutput("datasets"), value = 'datasets'),
    id = "theTab"))
)

2 个答案:

答案 0 :(得分:4)

在最近的闪亮版本中,您可以在 global.R 文件中包含变量,这些变量可用于ui和服务器。看看这里的范围规则:

http://shiny.rstudio.com/articles/scoping.html

答案 1 :(得分:2)

终于找到了解决方案!!基本上我应该在UI.R文件的顶部加载我的工作区。这样:

attach("myWorkspace.RData")