Gnuplot:如何将eval与for循环一起使用

Gnuplot:如何将eval与for循环一起使用,gnuplot,Gnuplot,我有一个gnuplot脚本来绘制100个(x,y)格式的数据文件。现在我想对每组数据进行线性拟合,得到每组数据对应的m,b值。脚本在到达eval命令时崩溃。由于gnuplot4.4(我正在使用)不支持do-for语法,有谁能告诉我如何在for循环中正确使用eval?我的脚本如下: # template.gnuplot set terminal postscript enh color 24 plotfile = "graph.eps" set output plotfile filename(n

我有一个gnuplot脚本来绘制100个
(x,y)
格式的数据文件。现在我想对每组数据进行线性拟合,得到每组数据对应的
m,b
值。脚本在到达eval命令时崩溃。由于gnuplot4.4(我正在使用)不支持do-for语法,有谁能告诉我如何在for循环中正确使用eval?我的脚本如下:

# template.gnuplot
set terminal postscript enh color 24
plotfile = "graph.eps"
set output plotfile
filename(n) = sprintf("%d_mod.int", n)
plot for [i = 1:100] filename(i) u 1:2 title sprintf("%d", i) w lp
fstr(n) = sprintf('f%d(x) = m%d*x + b%d', n)
fitstr(n) = sprintf('fit ''%d_mod.int'' f%d(x) via m%d,b%d', n)
eval fstr(i) for [i = 1:100]
eval fitstr(i) for [i = 1:100]

没有升级的具体原因是什么?这将是最简单的。我已经升级到4.6,但是do-for命令只执行一次(而不是100次)。在循环结构中进行直线拟合的语法是什么?如果我没有弄错的话,那么这个问题与您得到的答案相同,对吗?如果是,请删除此问题?