首页 > 解决方案 > Gnuplot:是否可以使用 for 循环将变量存储在数组中?

问题描述

假设我们得到以下变量:

var1 = 2
var2 = 8
var3 = 24

我想做以下事情,就像一个循环:

array A[3]
A[1] = var1
A[2] = var2
A[3] = var3

我试过但没有用:

array A[3]
do for [i=1:3] {
A[i] = var[i]
}

我想将索引从添加i到,variable这样它就会A[1] = var1等。它说变量var将是未定义的。圆括号之类var(i)的也不起作用。

甚至有可能这样做吗?任何提示表示赞赏。

标签: arraysgnuplot

解决方案


试试这个。检查help evaluate。也许有更好的方法。

代码:

### assign variables to array
reset session

var1 = 2
var2 = 8
var3 = 24

array A[3]

do for [i=1:3] {
    eval(sprintf("A[%d] = var%d",i,i))
}

print A
### end of code

结果:

[2,8,24]

推荐阅读