gpt4 book ai didi

gnuplot - gnuplot fit 是否受终端影响?

转载 作者:行者123 更新时间:2023-12-02 03:33:14 25 4
gpt4 key购买 nike

我有一个 gnuplot 脚本文件来拟合测量数据,使用这个结构:

set terminal png

...some format templates...

f(x) = a + b*x + c*x**2

fit f(x) "datafile.txt" using "X":"Y" via a, b, c

...some plotting commands etc...

有了这个,gnuplot 显示了一些奇怪的行为:

  • 当我按原样运行脚本时,出现以下错误:

    Undefined value during function evaluation
    "myscriptfile.gnuplot", line 5: error during fit
  • 当我将 set terminal png 行移动到 fit 行之后时,它可以顺利运行。

  • 通常,我会在包含格式模板和进一步数据处理例程的主脚本的开头加载它。即使使用移动的 set terminal 命令,这样做也会给我上述错误消息。

因为这只是处理我的数据的第一部分,我真的需要它从主脚本工作......我已经尝试设置初始猜测,FIT_LIMIT 并从 gnuplot 环境加载它。我正在使用 gnuplot 4.6.5。

有谁知道如何解决这个问题或者 fit 如何受到其他命令的影响?或者这是某种错误?

编辑:上传了脚本和数据文件的精简版到here .对于减少的数据文件,计算出的拟合与测量点不一致,但与完整数据一致。

最佳答案

我不确定真正的错误是什么,但这似乎与您使用 using "PHEAT":"RHOT" 有关,尽管那应该没问题。

我可以通过以下最小设置重现您的错误:

一个数据文件test.dat :

A B
1 2
2 3
3 4

和一个文件 test.gp :

f(x) = a*x**2 + b*x + c
fit f(x) 'test.dat' using "A":"B" via a,b,c

如果我用 gnuplot test.gp 调用这个文件我得到和你一样的错误。如果我使用 using 1:2 它不会出现.如果我将代码粘贴到交互式终端中,错误也会出现,但只会出现一次。如果我只重复 fit再次命令,它工作正常。我会将此报告为错误。

在您发布的脚本中,我还可以使用 using 9:8 解决此问题而不是 using "PHEAT":"RHOT" .此外,您必须删除数据文件的第一行,这可以通过 tail 即时完成。 , 这样你就可以离开 using plot 的声明不变。所以你可以使用:

fit rhotside(x) "< tail -n +2 testdata.txt" using 9:8 via rhot0, rhot1, rhot2
fit rcoldside(x) "< tail -n +2 testdata2.txt" using 9:8 via rcold0, rcold1, rcold2

关于gnuplot - gnuplot fit 是否受终端影响?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25425001/

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