我想創建一個Shiny-RMarkdown應用程序,允許上傳自己的數據集。數據集有時不僅會影響一個塊,可以通過renderPlot()(或類似的)重新渲染,但有時會有兩個或更多的塊。請看下面的例子:閃亮和RMarkdown:渲染多個塊
---
title: Render multiple chunks
output: html_document
runtime: shiny
---
```{r echo=FALSE}
library(shiny)
fileInput('file1', 'Choose your own CSV File instead of provided
data',accept=c('text/csv', 'text/comma-separated-values,text/plain',
'.csv'))
go1<-reactive({
dpath <- "CurrentBiologyData.txt"
if(!is.null(input$file1)){
dpath <- input$file1$datapath
}
CB.dat <- read.table(dpath, header = TRUE) #choose 'CurrentBiologyData.txt'
plot(CB.dat)
})
```
```{r echo=FALSE}
renderPlot({
go1()
})
```
```{r}
renderPlot({
print(CB.dat)
})
```
所以我如果我上傳一個新的數據集,其受影響的三個組塊。問題是,第三塊沒有看到CB.dat填充在第一小盤:
Error: Object 'CB.dat' not found
任何想法如何,我可以使這項工作?
將文件放在一個'無功閱讀'然後在任何需要的地方使用它 – HubertL
謝謝。但反應只能部分解決問題。我最初的例子可能太簡單了,所以稍微將它擴展了三分之一。新的例子仍然很常見,但不起作用,因爲它會導致相同的錯誤。 – MarkusK