如何在R中加载并显示URL后缀非png/jpeg格式的图片
R语言加载无常规后缀URL图片的实现方法
你之前使用的imager::load.image()函数默认通过URL的后缀判断图片格式,遇到不带标准.jpeg/.png/.jpg后缀的图片链接时,就会因为无法识别格式加载失败。
你可以用临时文件中转的方法解决,属于改动最小的简便方案,代码示例如下:
library(imager) # 填入你的目标图片URL target_url <- "https://placekitten.com/200/300" # 生成临时文件存储路径,无需指定后缀 tmp <- tempfile() # 以二进制模式下载图片内容到临时文件 download.file(target_url, tmp, mode = "wb") # 直接读取本地临时文件,函数会自动通过文件头识别图片格式 img <- load.image(tmp) # 显示图片 plot(img) # 可选操作:加载完成后删除临时文件释放存储空间 unlink(tmp)
如果你不介意额外安装依赖包,也可以使用magick包直接读取这类URL,它的解析逻辑不需要依赖URL后缀,写法更简洁:
# 首次使用需先安装:install.packages("magick") library(magick) target_url <- "https://placekitten.com/200/300" img <- image_read(target_url) # 打印即可触发图片显示 print(img)
内容的提问来源于stack exchange,提问作者Jian Zhang
相关产品推荐
相关产品推荐

