为什么R Shiny中jpg和png图片无法正常加载显示?
R Shiny 嵌入图片无法正常显示的解决方法
- 优先检查静态资源目录配置:Shiny默认仅会将应用根目录(即app.R/ui.R/server.R存放的目录)下的
www文件夹作为静态资源服务目录,你需要将所有要引用的skiing.png等图片资源放到该www文件夹下,引用时不需要加www前缀,直接写文件名即可。 - 自定义资源路径方案:如果你不想使用默认的www目录,可以在UI定义前手动注册资源路径,示例代码如下:
# 第一个参数为自定义路径前缀,第二个参数为本地存放图片的文件夹路径 addResourcePath("res", "./my_pic_folder") # 引用图片时写法 tags$img(src = "res/skiing.png") - 核对文件名大小写:若应用部署在Linux环境下,文件路径是大小写敏感的,需确保
src参数填写的文件名和实际文件的大小写完全匹配。 - 问题排查技巧:启动应用后右键点击加载失败的图片图标,复制图片地址粘贴到浏览器地址栏访问,根据返回的404路径即可快速核对路径配置是否正确。
你提供的测试代码本身无语法错误,调整文件存放路径后即可正常运行,最小可运行示例对应的文件结构如下:
Shiny应用根目录/ ├─ app.R(或单独的ui.R、server.R文件) └─ www/ └─ skiing.png
对应的完整代码示例:
library(shiny) ui <- fluidPage( mainPanel( tags$img(src = "skiing.png"), width = 2 ) ) server <- function(input, output) {} shinyApp(ui = ui, server = server)
内容的提问来源于stack exchange,提问作者jeisenman19
相关产品推荐
相关产品推荐

