.使用gnuplot中的do loop从不同输出文件中的多个文件打印数据

.使用gnuplot中的do loop从不同输出文件中的多个文件打印数据,gnuplot,Gnuplot,我正在使用gnuplot4.6。 我有许多名为data_1.dat、data_2.dat、…、data_100.dat的数据文件。现在我想将数据从文件“data_I.dat”打印到文件“figure_I.eps”。当然,我可以按顺序为每个文件data_I.dat执行此操作,如下所示: set term postscript eps enhanced color set out 'figure_i.eps' pl 'data_i.dat' set out set term wxt 如果文件数量过

我正在使用gnuplot4.6。 我有许多名为data_1.dat、data_2.dat、…、data_100.dat的数据文件。现在我想将数据从文件“data_I.dat”打印到文件“figure_I.eps”。当然,我可以按顺序为每个文件data_I.dat执行此操作,如下所示:

set term postscript eps enhanced color
set out 'figure_i.eps'
pl 'data_i.dat'
set out
set term wxt
如果文件数量过大,这不是一个好方法。我知道在gnuplot4.6中可以使用'do'命令。因此,或许可以采取如下措施:

set term postscript eps enhanced color
do for [i=1:100] {
set out 'figure_i.eps'
pl 'data_i.dat'
set out
}
set term wxt

但是,我不知道如何在循环中真正指定输入和输出文件,以便自动提取正确的数字。非常感谢您的建议。提前谢谢

您可以在循环中使用sprintf:

...
outFile=sprintf("figure_%d.eps", i)
dataFile=sprintf("data_%d.dat", i)
set output outFile
plot dataFile ...
...

您可以在循环中使用sprintf:

...
outFile=sprintf("figure_%d.eps", i)
dataFile=sprintf("data_%d.dat", i)
set output outFile
plot dataFile ...
...