使用 for 循环将显示的图保存为 SVG
Saving displayed plots using for loop as SVG
如何保存只显示在“绘图窗格”中而不保存在工作区中的 R 图?
这里是关于我如何创建情节的简化示例:
library(corrplot)
data(cars)
res.plot <- cor(cars)
par(mfrow=c(3,2))
for (i in 1:6) {
corrplot(res.plot)
}
为了保存生成的绘图,我不能使用 ggsave
,因为我没有 plot=
输入,因为绘图未保存在工作区中。
此代码也不起作用:
data(cars)
res.plot <- cor(cars)
par(mfrow=c(3,2))
svg(filename=paste0("Rplot_",Sys.time(),".svg"), width = 8.27,height = 11.69)
for (i in 1:6) {
corrplot(res.plot)
}
dev.off()
到目前为止我找到的唯一解决方案是使用 R studio 的“导出”对话框,但由于我需要导出大量绘图,因此使用代码保存它们会更快。
有什么想法吗?
您正在尝试保存循环。试试这个:
library(corrplot)
data(cars)
res.plot <- cor(cars)
par(mfrow=c(3,2))
for (i in 1:6) {
svg(filename=paste0("Rplot_",Sys.time(),".svg"), width = 8.27,height = 11.69)
corrplot(res.plot)
dev.off()
}
或同一面板中的所有地块:
library(corrplot)
res.plot <- cor(cars)
svg(filename=paste0("Rplot_",Sys.time(),".svg"), width = 8.27,height = 11.69)
par(mfrow=c(3,2))
for (i in 1:6) {
corrplot(res.plot)
}
dev.off()
我发现了一种不同的方法,它也能满足我的要求:
library(corrplot)
data(cars)
res.plot <- cor(cars)
par(mfrow=c(3,2))
for (i in 1:6) {
corrplot(res.plot)
}
dev.copy(svg,'myplot.svg',width = 8.27,height = 11.69)
dev.off()
如何保存只显示在“绘图窗格”中而不保存在工作区中的 R 图?
这里是关于我如何创建情节的简化示例:
library(corrplot)
data(cars)
res.plot <- cor(cars)
par(mfrow=c(3,2))
for (i in 1:6) {
corrplot(res.plot)
}
为了保存生成的绘图,我不能使用 ggsave
,因为我没有 plot=
输入,因为绘图未保存在工作区中。
此代码也不起作用:
data(cars)
res.plot <- cor(cars)
par(mfrow=c(3,2))
svg(filename=paste0("Rplot_",Sys.time(),".svg"), width = 8.27,height = 11.69)
for (i in 1:6) {
corrplot(res.plot)
}
dev.off()
到目前为止我找到的唯一解决方案是使用 R studio 的“导出”对话框,但由于我需要导出大量绘图,因此使用代码保存它们会更快。
有什么想法吗?
您正在尝试保存循环。试试这个:
library(corrplot)
data(cars)
res.plot <- cor(cars)
par(mfrow=c(3,2))
for (i in 1:6) {
svg(filename=paste0("Rplot_",Sys.time(),".svg"), width = 8.27,height = 11.69)
corrplot(res.plot)
dev.off()
}
或同一面板中的所有地块:
library(corrplot)
res.plot <- cor(cars)
svg(filename=paste0("Rplot_",Sys.time(),".svg"), width = 8.27,height = 11.69)
par(mfrow=c(3,2))
for (i in 1:6) {
corrplot(res.plot)
}
dev.off()
我发现了一种不同的方法,它也能满足我的要求:
library(corrplot)
data(cars)
res.plot <- cor(cars)
par(mfrow=c(3,2))
for (i in 1:6) {
corrplot(res.plot)
}
dev.copy(svg,'myplot.svg',width = 8.27,height = 11.69)
dev.off()