【问题标题】:import xml image into R将xml图像导入R
【发布时间】:2012-12-31 23:56:56
【问题描述】:

我想导入this等图片 ,这样我就可以按照herehere 的描述在图像上绘制另一个图表。

我遇到的问题是图形不是具有固定 url 的图形对象,而是由代码创建的。我不太了解图像背后的代码,但无法使用 RCurl 和 XML 重新创建它。

我看到两个可能的选项:使用 R 启动浏览器并将图像另存为 或正确处理代码,我想像这样

URL<-"http://
test<-htmlParese(getURL(url))
xpathSApply(

有什么想法吗?

【问题讨论】:

    标签: xml image r web-scraping


    【解决方案1】:

    您要抓取的图像的链接不是“xml 图像”。它只是一个 .png 文件。因此,只需将图像保存到文件中,将其加载到 R 中,然后将其放在绘图上即可。像这样的东西会让你到达那里,但你需要稍微玩一下才能让它变得漂亮。

    library(png)
    # use the URL from your post, or construct on-the-fly
    url = "http://pulse.blogs.yandex.net/?size=small&charset=utf8&period=20120116-20130116&query0=%D0%BF%D1%83%D1%82%D0%B8%D0%BD"
    download.file(url,destfile='/tmp/test.png',mode='wb')
    xvals=rnorm(10)
    yvals=rnorm(10)
    # just set up an "empty" plot
    plot(xvals,yvals,type='n')
    r = readPNG('/tmp/test.png')
    # read the help for rasterImage for details
    rasterImage(r,-1,-1,1,1)
    # plot the points over the image
    points(xvals,yvals)
    

    【讨论】:

    • 它对你有用吗?我收到此错误消息警告消息:在 download.file(url, destfile = "test.png") 中:下载长度 33784 != 报告长度 200
    • 随后出现错误:readPNG("test.png") 中的错误:文件不是 PNG 格式。看起来像这样下载的文件已损坏,并且比仅使用“另存为”略大
    • 代码完美运行,只需要download.file(url,destfile='test.png',mode="wb")
    • 已编辑以反映 Rolf 关于 mode='wb' 的评论。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-07
    • 1970-01-01
    • 1970-01-01
    • 2019-08-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多