【发布时间】:2016-08-19 14:21:55
【问题描述】:
我想知道是否有人知道将 ggvis 对象导出到 PNG 的任何替代方法。可以在 Linux 或 Windows 上实现。
谢谢
【问题讨论】:
-
如果找不到方法,我只会截屏并裁剪它
-
我的目标是以编程方式进行。我想使用 knitr 将绘图嵌入到文档中。
我想知道是否有人知道将 ggvis 对象导出到 PNG 的任何替代方法。可以在 Linux 或 Windows 上实现。
谢谢
【问题讨论】:
我找到了几种方法,我发布了一种更直接的方法。
library(ggvis)
library(XML)
library(webshot)
library(htmltools)
outfile <- mtcars %>% ggvis(~wt, ~mpg) %>% layer_smooths() %>% set_options(width = 1200, height = 800) %>% view_static() %>% html_print( background = "white", viewer = getOption("viewer", utils::browseURL))
webst <- htmlParse(outfile, asText=FALSE)
showMethods(class=class(webst), where=search())
webst <- as(webst, "character")
class(webst)
id <- webst %>% sub(pattern = "-container.*", replacement ="") %>% sub(pattern = ".*plot_", replacement ="")
selec <- paste0("#plot_", id, " > div > svg")
webshot(outfile, "test_webshot8.png", selector = selec)
如果您对如何简化或更好的方法有任何建议,我们将不胜感激。
【讨论】: