我正在尝试使用并行操作创建4 png ..
以下是Kindof伪代码....基本上我试图减少处理时间,即。顺序需要更多的时间来创建4 png所有的绘图..无论如何我尝试了这样的东西,它不起作用...
library(doSNOW)
library(foreach)
cl<- makeCluster(6, type = "SOCK")
registerDoSNOW(cl)
foreach(i=1:4) %dopar%
{
Name <- Name <- paste(i, "dim.png", sep="_")
CairoPNG(filename = Name, width = 900, height = 480, pointsize = 12, bg = "white")
# The plotting code goes here
dev.off()
}
我的问题是,是否可以并行创建多个png?或者有更好的方法吗?
阿玛尔
答案 0 :(得分:3)
你得到的错误:
Error in { : task 1 failed - "could not find function "CairoPNG""
警告您的节点(或从属服务器)需要加载Cairo
个包。你可以通过运行
clusterEvalQ(cl, library(Cairo))
在foreach
来电之前,或者您可以在require(Cairo)
阻止中添加foreach
。
对于与snow
相关的所有内容,我始终认为此页面非常有用:http://www.sfu.ca/~sblay/R/snow.html