Gnuplot:如何在for循环中使用eval

时间:2014-06-19 13:22:56

标签: gnuplot

我有一个gnuplot脚本来绘制(x,y)格式的100个数据文件。现在,我想对每组数据进行线性y=m*x + b拟合,并为每组数据获取相应的m,b值。该脚本在到达 eval 命令时崩溃。由于gnuplot 4.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]

0 个答案:

没有答案