是否有任何方法可以使用parallel来加速plotVenn()进程?
我正在尝试制作一个15组的维恩图。我可以用9,使用是否有任何方法可以使用parallel来加速plotVenn()进程?,r,performance,plot,parallel-processing,venn-diagram,R,Performance,Plot,Parallel Processing,Venn Diagram,我正在尝试制作一个15组的维恩图。我可以用9,使用nvenr包,但是我必须绘制22次才能压缩结果 myV <- createVennObj(nSets = 9, sNames = c( "NN","AdINI","AdTAR", "NN con NBI", "NN sin NBI",
nvenr
包,但是我必须绘制22次才能压缩结果
myV <- createVennObj(nSets = 9, sNames = c( "NN","AdINI","AdTAR",
"NN con NBI",
"NN sin NBI",
"AdINI con NBI",
"AdINI sin NBI",
"AdTAR con NBI",
"AdTAR sin NBI"))
myV <- setVennRegion(myV, c("NN con NBI", "NN"), 4343)
myV <- setVennRegion(myV, c("NN sin NBI", "NN"), 22526)
myV <- setVennRegion(myV, c("AdINI con NBI", "AdINI"), 2032)
myV <- setVennRegion(myV, c("AdINI sin NBI", "AdINI"), 9545)
myV <- setVennRegion(myV, c("AdTAR con NBI", "AdTAR"), 2641)
myV <- setVennRegion(myV, c("AdTAR sin NBI", "AdTAR"), 10125)
i=0
while (i<22) {
myV <- plotVenn(nVennObj = myV, outFile='democentro.svg')
i=i+1
}
myV模块是CPU密集型模块,RAM不是问题。实际问题是,每条线的点数随着集合数的增加而非线性增加。我对该行为进行了微调,以便能够以尽可能快的速度渲染多达九组。我一直在研究一个新版本的算法,它可以丢弃不必要的点,并且在像你这样的情况下可以更快。不幸的是,我无法将此版本移植到R
(我认为Rcpp
存在范围问题)
您可以从中尝试该版本。您将在那里找到有关如何准备文件的说明。您甚至可以在下载Windows的二进制文件 nVennR模块是CPU密集型模块,RAM不是问题。实际问题是,每条线的点数随着集合数的增加而非线性增加。我对该行为进行了微调,以便能够以尽可能快的速度渲染多达九组。我一直在研究一个新版本的算法,它可以丢弃不必要的点,并且在像你这样的情况下可以更快。不幸的是,我无法将此版本移植到R
(我认为Rcpp
存在范围问题)
您可以从中尝试该版本。您将在那里找到有关如何准备文件的说明。您甚至可以在下载Windows的二进制文件 非常感谢你的回答,我的朋友!谢谢你创建了nVenn,太棒了。我已经创建了txt文件,它描述了维恩图的区域。15组等于2^15=32768个组合+15个名称+1个标题=32784行。在这一步之后我被卡住了,因为我不熟悉perl。。。我下载了ATOM并安装了运行脚本
包,但无法运行脚本。我遇到了以下错误:“perl”未被识别为内部或外部命令、可操作程序或批处理文件,这意味着您没有安装perl。你可以从网上下载,你是对的,我为我的业余爱好道歉。现在我可以运行脚本了,但是我没有得到任何结果。我确信txt文件与.pl文件在同一个文件夹中,并且具有您描述的结构===组分析=====nVenn输入===nVenn v1.2 0 0[在0.092s中完成]
。再次感谢你的帮助!您可以使用feed\u venn\u noheader.pl
创建输入文件(类似于perl feed\u venn\u noheader.pl file1 file2…>venn.txt
。这应该创建文件venn.txt
,作为输入。如果运行nVenn.exe
,您会得到一个提示,询问输入文件。如果运行nVennOGL.exe,输入文件必须位于同一文件夹中,并且其名称必须是venn.txt
。对于此ap应用程序方面,我建议使用nVennOGL.exe
,因为您可以通过按ESC
来控制模拟的各个阶段。当您对结果满意时,只需按ESC
,然后再按一次,直到它停止。我想我接近了,但我仍然不能。我创建了所有包含组的txt文件,如您在ex1、ex2和ex3.W中所示当我运行perl feed\u venn\u noheader.pl file1.txt…file10.txt>venn.txt
时,它返回以下错误:Bareword“venn”不允许,而“strict subs”在D:\…\feed\u venn\u noheader.pl第83行使用时,我读到可能可以通过引用来解决,但我不能——或者我不知道如何——这样做。非常感谢你的回答,我的朋友!感谢你创建了nVenn,这太棒了。我创建了一个txt文件,它描述了venn图的区域。15个集合等于2^15=32768组合+15个名称+1个标题=32784行。在这一步之后,我被卡住了,因为我不熟悉perl…我下载了ATOM并安装了运行脚本
包,但我无法运行脚本。我遇到了以下错误:“perl”未被识别为内部或外部命令、可操作程序或批处理文件,这意味着您没有安装perl。您可以从下载它,您是对的,我为我的业余爱好道歉。现在我可以运行脚本,但没有得到任何结果。我确信txt文件与.pl文件位于同一文件夹中,并且具有您需要的结构描述==组分析=====nVenn输入===nVenn v1.2 0 0[在0.092s中完成]
。再次感谢您的帮助!您可以使用feed\venn\u noheader.pl
创建输入文件(类似于perl feed\u venn\u noheader.pl file1 file2…>venn.txt
。这应该创建文件venn.txt
,作为输入。如果运行nVenn.exe
,您会得到一个提示,询问输入文件。如果运行nVennOGL.exe,输入文件必须位于同一文件夹中,并且其名称必须是venn.txt
。对于此ap应用程序方面,我建议使用nVennOGL.exe
,因为您可以通过按ESC
来控制模拟的各个阶段。当您对结果满意时,只需按ESC
,然后再按一次,直到它停止。我想我接近了,但我仍然不能。我创建了所有包含组的txt文件,如您在ex1、ex2和ex3.W中所示当我运行perl feed\u venn\u noheader.pl file1.txt…file10.txt>venn.txt
时,它返回以下错误:在D:\…\feed\u venn\u noheader.pl第83行使用“strict subs”时不允许使用裸字“venn”
我读到可能可以通过引用来解决,但我不能——或者我不知道怎么做。