无论如何将SVG绘制到内存缓冲区而不是文件中?
我正在尝试将R嵌入到我自己的应用程序中,因此我可以使用R生成svg图表。我想避免生成文件,然后将svg文件读取到我的应用程序。
我发现了这个In R, how to plot into a memory buffer instead of a file?,但这是针对png格式的。
如果我们可以执行与svg类似的操作并将svg内容保存到字符串变量
那就太棒了谢谢!
答案 0 :(得分:3)
gridSVG包可能很有用:
library(ggplot2)
library(gridSVG)
ggplot(iris, aes(Species, Sepal.Length)) + geom_point()
SVGlist <- grid.export(name = NULL)
str(SVGlist, 1)
#List of 4
# $ svg :Classes 'XMLInternalElementNode', 'XMLInternalNode', 'XMLAbstractNode' <externalptr>
# $ coords :List of 18
# $ mappings:List of 5
# $ utils : chr "// Note that this code is documented using JSDoc and guided by the following URLs:\n// http://code.google.com/p/jsdoc-toolkit/w"| _truncated__
SVGlist$svg
#the SVG code
但是,这仍然需要打印到图形设备。