gpt4 book ai didi

header - Gnuplot:每一个行为都很奇怪

转载 作者:行者123 更新时间:2023-12-02 04:37:26 25 4
gpt4 key购买 nike

我想绘制一个如下所示的文件:

this is some header
that is written by the measurement software
for example it contains the date: 2018/1/1

column 1 column 2 column 3 column 4
1 12 13 13 14
2 15 15 15 15
3 10 12 13 15
4 9 9 8 8
5 7 9 10 11
6 6 6 6 6

因此存在一个由空行与数据分隔的多行标题。很简单,只需使用我认为的 every 命令即可。但也存在一些问题(MWE):

reset

$testdata << EOD
this is some header
that is written by the measurement software
for example it contains the date: 2018/1/1

column 1 column 2 column 3 column 4
1 12 13 13 14
2 15 15 15 15
3 10 12 13 15
4 9 9 8 8
5 7 9 10 11
6 6 6 6 6
EOD

# set datafile separator "\t"
# set key autotitle columnhead
# set datafile commentschars "abcdefghijklmnopqrstuvwxyz"

# errors: bad data on line X:
# plot $testdata
# plot $testdata every ::1
# plot $testdata every ::2
# plot $testdata every ::3
plot $testdata every ::4

如果我只绘制文件而没有every,则会收到坏数据错误(如预期)。我的理解是,我需要忽略前 4 行,因为它们只是文本,因此必须使用 plot $testdata every::4,但这也忽略了前 3 个数据点,并且绘图开始在 x=4 处。使用 every::3 是可能的,然后绘图从 x=3 开始。使用 every::1every::2 会再次产生坏数据错误。

如果我取消注释set key autotitle columnhead,标题只会更改为“is”或“这是一些标题”(取决于数据文件分隔符),因此标题是根本没有被忽视。另外,虽然现在 every::2 可以工作(..并且绘图从 x=2 开始),every::1 仍然会产生错误。

我的目标是获得一个明显包含每个数据点的图+使用列标题作为标题。我当前的解决方法是 set datafile commentschars "abcdefghijklmnopqrstuvwxyz",但这会阻止我使用列标题。有没有一种仅限 gnuplot 的方法来处理这个问题?我无法更改文件格式,因为它是测量设备的输出。另外,我知道像 awk 这样的工具,但我不是管理员,无法安装软件。也应该避免这种情况,以允许在不同的计算机上运行脚本。

非常感谢任何帮助!非常感谢

最佳答案

仅在解析整个数据后才使用 every 进行数据过滤。这就是为什么您会收到警告和错误,因为无法正确解析第一行。

要在实际解析开始之前跳过某些行,请使用 skip 关键字:

$testdata <<EOD
this is some header
that is written by the measurement software
for example it contains the date: 2018/1/1

"column 1" "column 2" "column 3" "column 4"
1 12 13 13 14
2 15 15 15 15
3 10 12 13 15
4 9 9 8 8
5 7 9 10 11
6 6 6 6 6
EOD

set key autotitle columnheader
plot $testdata skip 4 using 1:2 w lp

enter image description here

关于header - Gnuplot:每一个行为都很奇怪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53449219/

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