我有一个包含几十亿条数据的10GB文件。其中有很多列。我想将每一列绘制成不同的子图。我使用了以下的最小工作示例:
set datafile separator ","
set terminal png
set output "a.png"
set multiplot layout 2,1 title ""
plot "camkii.dat" using 1:2 with lines
plot "camkii.dat" using 1:23 with lines
此脚本需要几十秒钟时间。正如您所看到的,我两次调用了
plot "camkii.dat" ...
。我怀疑每次都读取文件。这不太高效,而且我可能会耗尽内存。如果我可以将文件读入某个变量(比如说
foo
),然后使用变量foo绘制每个子图。类似于plot foo[1] ...
和plot foo [2] ...
等。那么我只需一次读取文件。我怀疑gnuplot可能正在两次加载文件。如果是这样,将文件保存到变量中并绘制它是否有帮助?对MWE建议的更改将非常有帮助。