gpt4 book ai didi

gnuplot:如何从最后绘制的点添加一条水平线

转载 作者:行者123 更新时间:2023-12-04 01:13:06 26 4
gpt4 key购买 nike

我有一些基于时间的值,它们在 10000 和 0 之间循环(大约一天两次)。
我已经绘制了图表,但我想要一条从最后一点开始的水平线,以便于引用。

我的数据(预计在任一列上重复):

-23.7897222222222 4832-23.7138888888889 4749-23.7138888888889 4749-23.5169444444444 4479-23.4277777777778 4365-23.4152777777778 4365-23.2647222222222 4086-23.1686111111111 3960-23.1083333333333 3907-23.1083333333333 3907 ...-0.777777777777778 4950-0.777777777777778 4950-0.6075 4601-0.6075 4601-0.421666666666667 4407-0.334722222222222 4213-0.284722222222222 4213-0.284722222222222 4213-0.112222222222222 3998-0.112222222222222 3998

My gnuplot script:

set terminal png
set title 'generated on 2020-10-06 16:00:00'
set xrange [-24:0]
set xtics -24, 4
set ytics 0, 2500
set output 'xxx.png'
set arrow from graph 0.042,0 to graph 0.042,1 nohead
set arrow from graph 0.083,0 to graph 0.083,1 nohead
set arrow from graph 0.125,0 to graph 0.125,1 nohead
set arrow from graph 0.167,0 to graph 0.167,1 nohead
set arrow from graph 0.208,0 to graph 0.208,1 nohead
set arrow from graph 0.250,0 to graph 0.250,1 nohead
set arrow from graph 0.292,0 to graph 0.292,1 nohead
set arrow from graph 0.333,0 to graph 0.333,1 nohead
set arrow from graph 0.375,0 to graph 0.375,1 nohead
set arrow from graph 0.417,0 to graph 0.417,1 nohead
set arrow from graph 0.458,0 to graph 0.458,1 nohead
set arrow from graph 0.500,0 to graph 0.500,1 nohead
set arrow from graph 0.542,0 to graph 0.542,1 nohead
set arrow from graph 0.583,0 to graph 0.583,1 nohead
set arrow from graph 0.625,0 to graph 0.625,1 nohead
set arrow from graph 0.667,0 to graph 0.667,1 nohead
set arrow from graph 0.708,0 to graph 0.708,1 nohead
set arrow from graph 0.750,0 to graph 0.750,1 nohead
set arrow from graph 0.792,0 to graph 0.792,1 nohead
set arrow from graph 0.834,0 to graph 0.834,1 nohead
set arrow from graph 0.875,0 to graph 0.875,1 nohead
set arrow from graph 0.917,0 to graph 0.917,1 nohead
set arrow from graph 0.958,0 to graph 0.958,1 nohead
plot 'xxx.dat' notitle with points pt 3

还有我的(预期的)结果

enter image description here

最佳答案

检查以下内容。值 myLast 将包含数据的最后一个 y 值。绘制网格可以更简单。

代码:

### horizontal line through last datapoint
reset session

$Data <<EOD
-23.7897222222222 4832
-23.7138888888889 4749
-23.7138888888889 4749
-23.5169444444444 4479
-23.4277777777778 4365
-23.4152777777778 4365
-23.2647222222222 4086
-23.1686111111111 3960
-23.1083333333333 3907
-23.1083333333333 3907
...
-0.777777777777778 4950
-0.777777777777778 4950
-0.6075 4601
-0.6075 4601
-0.421666666666667 4407
-0.334722222222222 4213
-0.284722222222222 4213
-0.284722222222222 4213
-0.112222222222222 3998
-0.112222222222222 3998
EOD

set title 'generated on 2020-10-06 16:00:00'

set xrange [-24:0]
set xtics -24, 4
set mxtics 4
set grid xtics,mxtics ls -1, ls -1
set yrange [0:10000]
set ytics 0, 2500

plot $Data u 1:(myLast=$2) w p pt 3 notitle, \
myLast w l notitle
### end of code

结果:

enter image description here

关于gnuplot:如何从最后绘制的点添加一条水平线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64229040/

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