以server.r以外的其他abc.r文件的形式访问上载的闪亮文件

时间:2018-09-25 04:46:05

标签: r file shiny

在我的server.r中,我正在使用读取

文件
  dat <- reactive({
          if (is.null(input$datafile1$datapath))
             {
                dat <- read.csv("D:/sample_withbatch.csv")

                read.csv("D:/sample_withbatch.csv")
                x<<-dat



                } else {
                dat <- read.csv(input$datafile1$datapath)

                read.csv(input$datafile1$datapath)
                x<<-dat

                }

  })

使用dat()我可以访问上传的文件。

现在我希望其他一些程序,例如abc.r也应该自动更新 带有上载文件内容的名为df.data的数据框,并以闪亮的方式绘制图形。 我在global.r中有此代码:

source("abc.R",local = TRUE)

它不起作用。

1 个答案:

答案 0 :(得分:0)

这是您可以执行的操作:

ui.R

ui <- fluidPage(
  sidebarLayout(
    sidebarPanel(
      fileInput("file1", "Choose CSV File",
                accept = c(
                  "text/csv",
                  "text/comma-separated-values,text/plain",
                  ".csv")
      )
    ),
    mainPanel(
      plotOutput("distPlot"),
      tableOutput("contents")        
    )
  )
)

server.R

server <- function(input, output) {

  dat <- reactive({
    req(input$file1) # require that input is available, prevents error when no data uploaded
    inFile <- input$file1
    df <- read.csv(inFile$datapath)
    return(df)
  })

  output$distPlot <- renderPlot({
    plot(dat()["name.of.column"])
  })

  output$contents <- renderTable({
    dat()
  })

}

您可以使用read.csv(inFile$datapath)上传数据,并通过将其作为反应值来访问数据。另外,请确保将ui.R和server.R放在同一目录中,并使用runApp("your_directory_path")

运行应用