使用 shinyAppDir 在 Rmarkdown 中嵌入超过 1 个闪亮的应用程序
Posted
技术标签:
【中文标题】使用 shinyAppDir 在 Rmarkdown 中嵌入超过 1 个闪亮的应用程序【英文标题】:Embed more than 1 shiny application in Rmarkdown using shinyAppDir 【发布时间】:2015-06-26 07:42:39 【问题描述】:我想在 rmarkdown 中嵌入两个独立的闪亮应用。我应该把rmd
文件放在哪里?
当我只有一个闪亮的应用程序时,我将 rmd 作为闪亮的应用程序放在目录中,它可以工作。代码如下:
```r, echo=FALSE
shinyAppDir(
"E:/example/shinyfolder",
options=list(
, height=550
)
)
```
但是当我将rmd
移动到闪亮的应用程序文件夹的上层,比如E:/example
并使用我之前使用的确切绝对路径时,错误说cannot open compressed file './Data/joined1.rda', probable reason 'No such file or directory'
,我的想法是把@987654326 @ 在上层文件夹中并引用子文件夹中的不同应用程序。关于如何解决它的任何想法?
【问题讨论】:
【参考方案1】:这可能与您在闪亮的应用程序中使用相对路径有关。由于我假设joined1.rda
是您的闪亮应用程序之一尝试读取的数据文件,因此一旦闪亮的应用程序文件(server.R
和ui.R
)不再与您的应用程序位于同一文件夹中,它就无法再找到它降价文件。使用相对于您的降价文件路径的路径,或在降价文件或应用程序中使用setwd()
明确设置一个。
假设这样的文件夹/文件结构...
/parentDir (markdown.rmd)
/apps
/app1 (server.R, ui.R)
/app2 (server.R, ui.R)
/data (joined1.rda)
...进一步假设您的工作目录是~/parentDir
,您可以分别使用shinyAppDir(".apps/app1")
和shinyAppDir("./apps/app2")
嵌入闪亮的应用程序。
在您闪亮的应用程序 (server.R
) 中,您也可以使用 /data
文件夹的绝对路径(如果您真的想使用绝对路径...),或者根据您的工作目录使用相对路径.因此,如果第二个闪亮的应用程序(在/app2
中)从您的/data
文件夹加载数据,您使用load("./apps/app2/data/joined1.rda")
。
【讨论】:
以上是关于使用 shinyAppDir 在 Rmarkdown 中嵌入超过 1 个闪亮的应用程序的主要内容,如果未能解决你的问题,请参考以下文章
ggplot2 vs cowplot,FUN 中的错误(“text”[[1L]],...):
在哪里使用 CORBA 以及在哪里使用 SNMP 进行监控?
为啥在使用 unicode 时我不能在 :before :after 内容之后使用空格
在哪里使用 callable 以及在哪里使用 Runnable Interface?
在 Observable RxSwift 中使用 'asPromise()' 可以在 PromiseKit Promise 中使用吗?