[英]Reading data csv file from folder level above app.R file in shiny
[英]Have shiny load from a file not named app.R
有誰知道我可以更改閃亮加載的默認文件? 我希望比每個目錄一個文件更具靈活性。
對於單個文件應用程序,只需將其重命名並添加
app <- shinyApp(ui = ui, server = server)
runApp(app)
才能找到它。
這取決於您的設置。
如果要在本地(在交互式R會話中)運行應用程序,可以使用以下命令
shiny::shinyAppFile("path/to/my/appFile.R")
加載應用程序。 在這種情況下,應用程序文件不必命名為app.R
但是請注意,通過這種方法,所有相對路徑(例如圖像路徑)將相對於您的工作目錄而不是相對於應用程序的目錄進行解析。
如果通過閃亮服務器(或Shinyapps.io)運行應用程序,則情況會更加復雜。 在這種情況下,服務器將期望將應用定義為app.R
或ui.R/server.R
,以便正確加載。 我知道這里唯一的解決方法是使用shinyAppFile
內app.R
但是這可能不是在大多數情況下是非常有用的。
您還可以將應用程序定義為R對象,並通過打印該對象來調用它。
someAppObj <- shinyApp(ui = fluidPage(), server = function(...) {})
## start the app by printing it
someAppObj
如@ismirsehregal的回答中所述,您也可以使用runApp
代替打印方法,該方法將注意相對路徑和對應用程序環境的處理是否稍有不同。
runApp(someAppObj)
設置1實際上與設置3有關,因為shinyAppFile
返回了一個應用程序對象。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.