我的目标是从网址下载图片,然后将其显示在R中。
我有一个URL并想出如何下载它。但是下载的文件无法预览,因为它已“损坏,损坏或太大”。
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
有什么建议吗?
答案 0 :(得分:19)
如果我尝试使用您的代码,则看起来图片已下载。但是,当使用Windows图像查看器打开时,它也表示它已损坏。
原因是您没有在mode
声明中指定download.file
。
试试这个:
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.15 或Displaying images in R in version 3.1.0
答案 1 :(得分:0)
下载图像后,可以使用默认的图像查看器程序,使用base R打开文件,如下所示:
file.show(yourfilename)
答案 2 :(得分:-1)
这也可行 这里
library(jpeg)
library(png)
x <- "http://link..."
image_name<- readJPEG(getURLcontent(x)) # for jpg
image_name<- readPNG(getURLcontent(x))# for png