我可以在屏幕上写一个文件到一个文件吗?

时间:2014-05-07 15:03:46

标签: r plot

在R中,如果我已经在屏幕上创建了一个情节,有没有办法将它写入文件,而无需再次重新运行绘图代码?

质量是否与直接绘制文件相同? (例如,当保存为pdf时,可以获得可复制的文本和可缩放的图表显示)

谢谢!

2 个答案:

答案 0 :(得分:4)

您可以使用图片包中的savePlot函数或ggplot2包中的图表ggsave

根据评论进行修改 savePlot仅保存来自cairo X11设备的图(在我的系统中,它表示在Windows中有相同名称的类似功能)。

正如Ben Bolker建议人们可以使用recordPlotreplayPlot

我想人们可以这样做:

plot(1:10)
pl <- recordPlot()
png()
replayPlot(pl)
dev.off()

关于质量: 对于savePlot,您的质量可能会更差,请参阅详细信息?savePlot。另外savePlot不保存pdf文件。

对于recordPlot / replayPlot,它将完全相同,因为重新创建了要存储的图,您可以更改pdf / {{1}的所有参数您正在使用的/ png功能。

答案 1 :(得分:4)

是的,请使用dev2bitmap

plot(1:10)
dev2bitmap("test.png")

编辑:请注意,您需要安装GhostScript。上面的代码在我的机器(OSX 10.9.2)上运行正常,0修补,我很确定我自己从未安装过GS ......但它可能已经安装了更大的包等,所以YMMV。