将矩阵中的许多图从 R 导出到 excel
Export many plots from a matrix from R to excel
我有一个包含 2 列的矩阵名称 df。
AVELOX5 AVELOX7
Jan 2009 1.00000 6.00000
Feb 2009 2.00000 4.00000
Mar 2009 5.00000 3.00000
Apr 2009 34.00000 1.00000
May 2009 7.00000 2.00000
Jun 2009 6.00000 34.00000
Jul 2009 8.00000 34.00000
Aug 2009 8.00000 53.00000
Sep 2009 9.00000 6.00000
Oct 2009 4.00000 7.00000
Nov 2009 23.00000 9.00000
Dec 2009 12.42851 10.33471
Jan 2010 12.78912 10.80950
Feb 2010 13.14972 11.28429
Mar 2010 13.51032 11.75908
Apr 2010 13.87092 12.23387
May 2010 14.23152 12.70866
Jun 2010 14.59212 13.18345
Jul 2010 14.95273 13.65824
Aug 2010 15.31333 14.13303
Sep 2010 15.67393 14.60781
Oct 2010 16.03453 15.08260
Nov 2010 16.39513 15.55739
我想将每列的图表导出到 excel。
我不知道我是否需要一个循环……而且我不知道代码是什么。
使用代码 plot(df[,1])
我有 AVELOX5
的地块,使用代码 plot(df[,2])
我有第二个地块。
我想用一个代码(可能是一个循环)将每一列从 R 导出到 excel..考虑到我想要循环,因为我想在一个有 80 列的矩阵中做同样的事情。 .所以我要花时间发短信 plot(df[,1])...plot(df[,80])
.
我的问题的第二部分是:我如何在 excel.
中从 R 导出 'n' 图
下面的循环应该会自动创建所需的每个绘图并将其保存到 .jpg 文件中。据我所知,没有办法将绘图导出到 Excel 文档。如果需要,您可以保存为不同的格式,有关此的更多详细信息here
for (i in 1:80) {
jpeg('i.jpg')
plot(df[,i])
dev.off()
}
可以一分为二
步骤 1 将绘图保存到本地驱动器中。可以按如下方式完成。
lapply(1:ncol(df), function(x) {
png(paste(x, ".png", sep = ""))
plot(df[,x])
dev.off()
})
# or
for(x in 1:ncol(df)) {
png(paste(x, ".png", sep = ""))
plot(df[,x])
dev.off()
}
步骤 2 导出到 Excel
实际上我不确定在 R 中是否有这样做的方法。您必须使用 VBA,因为它允许插入照片 (LINK)。
我有一个包含 2 列的矩阵名称 df。
AVELOX5 AVELOX7
Jan 2009 1.00000 6.00000
Feb 2009 2.00000 4.00000
Mar 2009 5.00000 3.00000
Apr 2009 34.00000 1.00000
May 2009 7.00000 2.00000
Jun 2009 6.00000 34.00000
Jul 2009 8.00000 34.00000
Aug 2009 8.00000 53.00000
Sep 2009 9.00000 6.00000
Oct 2009 4.00000 7.00000
Nov 2009 23.00000 9.00000
Dec 2009 12.42851 10.33471
Jan 2010 12.78912 10.80950
Feb 2010 13.14972 11.28429
Mar 2010 13.51032 11.75908
Apr 2010 13.87092 12.23387
May 2010 14.23152 12.70866
Jun 2010 14.59212 13.18345
Jul 2010 14.95273 13.65824
Aug 2010 15.31333 14.13303
Sep 2010 15.67393 14.60781
Oct 2010 16.03453 15.08260
Nov 2010 16.39513 15.55739
我想将每列的图表导出到 excel。
我不知道我是否需要一个循环……而且我不知道代码是什么。
使用代码 plot(df[,1])
我有 AVELOX5
的地块,使用代码 plot(df[,2])
我有第二个地块。
我想用一个代码(可能是一个循环)将每一列从 R 导出到 excel..考虑到我想要循环,因为我想在一个有 80 列的矩阵中做同样的事情。 .所以我要花时间发短信 plot(df[,1])...plot(df[,80])
.
我的问题的第二部分是:我如何在 excel.
中从 R 导出 'n' 图下面的循环应该会自动创建所需的每个绘图并将其保存到 .jpg 文件中。据我所知,没有办法将绘图导出到 Excel 文档。如果需要,您可以保存为不同的格式,有关此的更多详细信息here
for (i in 1:80) {
jpeg('i.jpg')
plot(df[,i])
dev.off()
}
可以一分为二
步骤 1 将绘图保存到本地驱动器中。可以按如下方式完成。
lapply(1:ncol(df), function(x) {
png(paste(x, ".png", sep = ""))
plot(df[,x])
dev.off()
})
# or
for(x in 1:ncol(df)) {
png(paste(x, ".png", sep = ""))
plot(df[,x])
dev.off()
}
步骤 2 导出到 Excel
实际上我不确定在 R 中是否有这样做的方法。您必须使用 VBA,因为它允许插入照片 (LINK)。