gpt4 book ai didi

gnuplot - 在 gnuplot 中迭代 2 的幂

转载 作者:行者123 更新时间:2023-12-01 10:46:51 25 4
gpt4 key购买 nike

我想使用 gnuplot 绘制存储在一堆文件中的数据。如果文件是使用序号命名的,(例如“1.dat”“2.dat”,...)我会使用类似

plot for [i=1:10] i.'.dat' u 1:2 w lp t 'I='.i;

但是,文件现在使用 2 的幂命名,即“2.dat”、“4.dat”、“8.dat”……我试过了

plot for [i=1:10] (2**i).'.dat' u 1:2 w lp t 'I='.(2**i);

但是我得到了错误

STRING operator applied to non-STRING type

我想这是因为 gnuplot 将 (2**i) 视为 float 而不是整数。

我确信有一种方法可以做我想做的事,但由于我对使用 gnuplot 的控制语句还很陌生,所以我不知道如何做。有人可以帮助我吗?

最佳答案

您可以使用 sprintf 将数字转换为字符串:

plot for [i=1:10] sprintf('%d',2**i).'.dat' u 1:2 w lp t 'I='.(2**i)

有趣的是,在标题中将 (2**i)'I=' 连接不会产生任何问题。

关于gnuplot - 在 gnuplot 中迭代 2 的幂,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25283768/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com