【Shiny部署至shinyapp.io】报错缺少包的解决方法 2021-07-08
自学了一下shinyapp,将R代码可视化放到Web上,比较方便使用。在Rstudio中,可以很方便的用界面右上角的Publish按钮deploy写的软件至shinyapp.io。当时参考的经验:官方说明「R shiny基础」使用shinyapp分享你的Shiny应用如何使用ShinyApps部署Shiny应用?但是,在Windows系统下,不知何故,总是报错称缺少某个包,为此我查询了许多经验贴,
自学了一下shinyapp,将R代码可视化放到Web上,比较方便使用。在Rstudio中,可以很方便的用界面右上角的Publish按钮deploy写的软件至shinyapp.io。
当时参考的经验:
官方说明
「R shiny基础」使用shinyapp分享你的Shiny应用
如何使用ShinyApps部署Shiny应用?
但是,我用这种方法,在Windows系统下,不知何故,总是报错称缺少某个包。
为此我查询了许多经验贴,部分如下:
https://stackoverflow.com/questions/52809151/something-wrong-with-filedependencies-rfile-when-deploying-shinydashboard
https://d.cosx.org/d/421965-shinyappsggplot2 https://stackoverflow.com/questions/48330668/error-in-shiny-deployment-on-shinyapps-iohttps://github.com/rstudio/rsconnect/issues/123](https://github.com/rstudio/rsconnect/issues/123
(请原谅我,一定还有被遗漏的贴子,找到再补上)
得到启发后,经过摸索,得到一套方案:
如我在DP文件夹里有一个app.R,那么这个项目应该就叫DP,
D:/RData/DP/app.R
经过成功或失败的deploying后,DP文件夹里会有一个文件夹:rsconnect
每次deploying前,先删除rsconnect文件夹
将包的引用方式由library()改为require(),如:
注:这一步很可能是多余的,我不知道它是否起到作用,还是记录下来吧。
require(shiny)
require(ggplot2)
require(ggprism)
require(dplyr)
require(svglite)
最后运行代码手动deploying:
library(rsconnect)
options(encoding = "UTF-8")
rsconnect::deployApp('D:/RData/DP')
即可!
更多推荐
所有评论(0)