在gnuplot中使用嵌套求和/循环求和的列

时间:2019-03-28 12:52:35

标签: loops plot gnuplot nested-loops

我想用gnuplot的命令求和以下几列的值,它们的索引分别是(16、18、20、24、26、28、32、34、36),而无需显式键入索引。

我知道有一个命令可以对不同列的值求和,这些索引可以用变量的函数表示:

plot 'data' using 1 : (sum [col=8:10] column(col*2))

问题在于,在我的情况下,索引只能用两个变量来描述,因此需要嵌套循环/和。索引的伪代码为

for i=0:2 {for j=0:2 { index = ( j + 8 + i*4 ) * 2 } }

是否可以在gnuplot中进行嵌套求和或for循环?

1 个答案:

答案 0 :(得分:0)

gnuplot中的所有迭代都以递归方式工作。无需特殊语法即可将一个嵌套在另一个内部。例如

filename(n,m) = sprintf("NAME_%d_%d.dat",n,m)
plot for [i=1:5] for [j=i:5] filename(i,j)