【发布时间】:2020-08-03 14:31:27
【问题描述】:
我有一个来自model_list 的 10 个图/图表的列表,我使用了下面的代码。我将这些图存储在列表var_list。
library(mixOmics)
var_list<-lapply(model_list, function(x) plotVar(x))
var_list 因此包含 10 个图,例如在列表的第一个元素下方:
> var_list[[1]]
x y Block names pch cex col font Overlap
TPI200 -0.6975577 -0.5582925 X TPI200 1 5 #388ECC 1 Correlation Circle Plots
TPI350 -0.8561514 -0.4101970 X TPI350 1 5 #388ECC 1 Correlation Circle Plots
TPI500 -0.9403552 -0.1074518 X TPI500 1 5 #388ECC 1 Correlation Circle Plots
TPI700 -0.9256605 0.3070954 X TPI700 1 5 #388ECC 1 Correlation Circle Plots
TPI900 -0.8697037 0.4699423 X TPI900 1 5 #388ECC 1 Correlation Circle Plots
我想将此列表中的这些图保存为 jpeg(生成 10 个不同的 jpeg)。我使用了以下代码,R 创建了 10 张图像,但所有图像都是相同的(因此只创建了第一个图并复制了其余的图)。
lapply(1:length(model_list), function (x) {
jpeg(paste0(names(model_list)[x], ".jpg"))
lapply(model_list, function(x) plotVar(x))
dev.off()
})
我见过类似的问题,但我找不到正确的解决方案来为列表中的每个数据框的每个绘图提供一个 jpg!我该如何解决这个问题?非常感谢!
通过link,您可以找到dput(model_list[[1]])。
【问题讨论】:
-
由于没有提供有关
model_list的数据,请尝试以下操作:for(i in 1:length(model_list)) { jpeg(paste0(names(model_list[i]), ".jpg")) plotVar(model_list[i]) dev.off() } -
@Duck,感谢您的回答,但我收到了错误消息
Error in sum(sapply(cord.X, nrow)) : invalid 'type' (list) of argument。我在我的问题中添加了var_list的第一个元素作为额外信息。 -
尝试复制您的问题由于数据类型而出现错误,请您在帖子中添加
dput(model_list[[1]])吗? -
@Duck,在帖子末尾,您可以找到一个链接 (wetranfer),该链接会打开一个包含
dput(model_list[[1]]的文本文件。仅将其作为文本放在帖子中就相当大了。我期待着你的回答!非常感谢! -
能否请您做这个并在 wetransfer 中分配:
save(model_list[[1]],file='Object.RData)'获取对象并上传。我对您上传的 txt 文件有疑问。