如何保存 Rstudio 历史中的所有图表
Posted
技术标签:
【中文标题】如何保存 Rstudio 历史中的所有图表【英文标题】:How to save all graphs from Rstudio History 【发布时间】:2016-04-30 11:28:51 【问题描述】:我正在寻找一种方法来保存 Rstudio GUI 中绘图窗口中的所有图形。
示例:
require(ggplot2)
qplot(mpg, wt, data = mtcars)
qplot(mpg, wt, data = mtcars, colour = cyl)
qplot(mpg, wt, data = mtcars, size = cyl)
qplot(mpg, wt, data = mtcars, facets = vs ~ am)
我现在在绘图窗口中有 4 个图形。我想将每个绘图保存到一个文件中。 我尝试了 ggsave,ggsave 中的“绘图”参数似乎很有希望,但我没有找到如何浏览 RstudioGD 中所有可用的绘图。
有什么想法吗?
编辑: 我知道我能做到:
a<-qplot(mpg, wt, data = mtcars)
b<-qplot(mpg, wt, data = mtcars, colour = cyl)
c<-qplot(mpg, wt, data = mtcars, size = cyl)
d<-qplot(mpg, wt, data = mtcars, facets = vs ~ am)
ggsave(a ...)
ggsave(b ...)
但我不想创建 R 对象。
【问题讨论】:
你想要什么输出?你想要pdf吗?您想要稍后可以加载的ggplot
对象吗?这从你的问题中不清楚。无论您要保存什么,我怀疑您最好编写一个脚本来保存对象,而不是使用 rstudio 的实用程序。
我不需要 ggplot 对象,png,pdf .. 可以。
你可以做ggsave(qplot(.....),....)
,这样你就不用做对象了。
【参考方案1】:
要写出 pdf 或 png,请查看 ?pdf
和 ?png
。大体流程是
# start pdf device
pdf(file=<path/filename.pdf>, height=<number>, width=<number>)
# first plot, on first page of pdf
print(qplot(...))
# second plot, on second page of pdf
print(qplot(...))
# more plots
...
# close graphics device
dev.off()
我通常将每个图形保存在单独的文件中,所以我的过程通常如下所示:
# start pdf device
pdf(file=<path/filename.pdf>, height=<number>, width=<number>)
# print plot
print(qplot(...))
# close graphics device
dev.off()
然后重复。
请务必在完成绘图后调用 dev.off()。
【讨论】:
以上是关于如何保存 Rstudio 历史中的所有图表的主要内容,如果未能解决你的问题,请参考以下文章