如何从 R 中的 URL 下载和显示图像?

how to download and display an image from an URL in R?

我的目标是从 URL 下载图像,然后在 R 中显示它。

我得到了一个 URL 并想出了如何下载它。但是下载的文件无法预览,因为是'damaged, corrupted, or is too big'.

y = "http://upload.wikimedia.org/wikipedia/commons/5/5d/AaronEckhart10TIFF.jpg"
download.file(y, 'y.jpg')

我也试过了

image('y.jpg')

在 R 中,但错误消息显示如下:

Error in image.default("y.jpg") : argument must be matrix-like 

有什么建议吗?

如果我尝试你的代码,看起来图像已下载。然而,当用 windows 图片查看器打开时,它也说它已损坏。 原因是您没有在 download.file 语句中指定 mode

试试这个:

download.file(y,'y.jpg', mode = 'wb')

有关该模式的更多信息,请参阅 ?download.file

这样至少您下载的文件是有效的。

要查看 R 中的图像,请查看

jj <- readJPEG("y.jpg",native=TRUE)
plot(0:1,0:1,type="n",ann=FALSE,axes=FALSE)
rasterImage(jj,0,0,1,1)

how to read.jpeg in R 2.15Displaying images in R in version 3.1.0

这个也可以 这里

library("jpeg")

library("png")

x <- "http://upload.wikimedia.org/wikipedia/commons/5/5d/AaronEckhart10TIFF.jpg"    

image_name<- readJPEG(getURLContent(x)) # for jpg

image_name<- readPNG(getURLContent(x)) # for png

下载图像后,您可以使用 base R 使用默认图像查看器程序打开文件,如下所示:

file.show(yourfilename)