pgfplots 内存过载

pgfplots 内存过载

我想绘制 5x9000+ 个数据点。我已经在使用:

\usepgfplotslibrary{external} 
\tikzexternalize

-shell-escape -enable-write18 

在 PDFLatex 中。但是,我仍然收到内存错误。我正在从这样的文件中读取数据:

\pgfplotstableread{C:\\data_1373554136.txt}
\datatable
%\addplot table[x = 0] from \datatable ;
\addplot table[y = 1] from \datatable ;
\addplot table[y = 2] from \datatable ;
\addplot table[y = 3] from \datatable ;
\addplot table[y = 4] from \datatable ;
\addplot table[y = 5] from \datatable ;

我的文件中的数据如下:

Time    0   1   2   3   4   5
0   0   0   0   0   0   0
1   0   1   7   19  1   115

我在 Windows 7 上使用 Miktex 运行。

有什么建议吗?

答案1

答案可能有点晚了,但只是为了记录一下。

就我而言,我发现 lualatex 非常慢。

相反,可以手动增加 pgfplots 外部化的内存。(数字是任意选择的,足够大,您可能需要调整它们)

\tikzexternalize[prefix=tikz,shell escape=-enable-write18]

\tikzset{external/system call= {pdflatex -save-size=80000 
                           -pool-size=10000000 
                           -extra-mem-top=50000000 
                           -extra-mem-bot=10000000 
                           -main-memory=90000000 
                           \tikzexternalcheckshellescape 
                           -halt-on-error 
                           -interaction=batchmode
                           -jobname "\image" "\texsource"}} 

或者你可以仅使用 lualatex 进行外部化

\tikzset{external/system call= {lualatex
                           \tikzexternalcheckshellescape 
                           -halt-on-error 
                           -interaction=batchmode
                           -jobname "\image" "\texsource"}} 

相关内容