R Shiny Server - 在应用程序启动时设置加载动画
R Shiny Server - set a loading animation on application startup
我过去使用过 shinyapps.io,它在应用程序启动时提供加载动画(微调器)。这很有用,因为我将 200MB 的 .RData
文件加载到内存中(启动时一次,而不是每个 server()
)。这最多需要 40 秒(将来,我将过渡到将数据存储在数据库中,但现在这就是我得到的)。
对于其他应用程序,我使用了 docker 图像 rocker/shiny
并希望完全过渡到基于 Docker 的方法并将我所有闪亮的应用程序放在一台服务器上并且远离 shinyapps.io。但是,我对这个应用程序有一个问题是它 在启动时不显示加载动画 因此用户在 30-40 秒内会看到灰色屏幕,而数据在后台加载。
至于代码,我加载所有数据,然后在 运行 shiny::shinyApp(ui = ui, server = server)
.
之前获取 ui.R
和 server.R
你们中有人知道在应用程序启动时指定加载动画的方法吗(我在服务器配置本身中没有找到任何东西,但我可能忽略了一些东西)?或者您是否找到了一个很好的解决方法来达到预期的结果?
所以我最后做的是遵循这里建议的解决方法:http://www.mazsoft.com/blog/post/2018/01/01/show-progress-bar-when-pre-loading-data-in-shiny-app
我们的想法是我们用 NULL
初始化所有数据变量。然后在 server
和 ui
之外有一个 readData()
函数,我们将所有数据加载到全局变量中,在 server
函数块的开头我们检查是否有一个我们的数据变量 is.null()
会导致我们调用 readData()
函数。
对于我的问题来说这是一个很好的解决方案,因为它是一个很好的解决方法,但我无法弄清楚如何在启动时实际显示加载动画,只是在加载数据时。我希望这可以帮助有类似问题的人。
我过去使用过 shinyapps.io,它在应用程序启动时提供加载动画(微调器)。这很有用,因为我将 200MB 的 .RData
文件加载到内存中(启动时一次,而不是每个 server()
)。这最多需要 40 秒(将来,我将过渡到将数据存储在数据库中,但现在这就是我得到的)。
对于其他应用程序,我使用了 docker 图像 rocker/shiny
并希望完全过渡到基于 Docker 的方法并将我所有闪亮的应用程序放在一台服务器上并且远离 shinyapps.io。但是,我对这个应用程序有一个问题是它 在启动时不显示加载动画 因此用户在 30-40 秒内会看到灰色屏幕,而数据在后台加载。
至于代码,我加载所有数据,然后在 运行 shiny::shinyApp(ui = ui, server = server)
.
ui.R
和 server.R
你们中有人知道在应用程序启动时指定加载动画的方法吗(我在服务器配置本身中没有找到任何东西,但我可能忽略了一些东西)?或者您是否找到了一个很好的解决方法来达到预期的结果?
所以我最后做的是遵循这里建议的解决方法:http://www.mazsoft.com/blog/post/2018/01/01/show-progress-bar-when-pre-loading-data-in-shiny-app
我们的想法是我们用 NULL
初始化所有数据变量。然后在 server
和 ui
之外有一个 readData()
函数,我们将所有数据加载到全局变量中,在 server
函数块的开头我们检查是否有一个我们的数据变量 is.null()
会导致我们调用 readData()
函数。
对于我的问题来说这是一个很好的解决方案,因为它是一个很好的解决方法,但我无法弄清楚如何在启动时实际显示加载动画,只是在加载数据时。我希望这可以帮助有类似问题的人。