gpt4 book ai didi

plot - gnuplot:绘制数据并使用重复 x 值的最大值

转载 作者:行者123 更新时间:2023-12-04 02:17:18 24 4
gpt4 key购买 nike

我想用两列绘制一个巨大数据文件的曲线:

数据文件(示例):

#dateYMD sum
2014-02-01 70
2014-02-01 85
2014-02-01 95
2014-02-02 116
2014-02-02 123
2014-02-09 130
2014-02-09 134
2014-02-11 145

如果我使用“带有线条的 0:1 绘图'data.txt'”并正确设置日期格式等,我将得到一个几乎正确的绘图,但不幸的是,如果超过一个,它会使用“下/上”值给出了每个日期的行。我想在我的图中绘制每天总和列的最大值。我想每天使用最后/最高给定值。

最佳答案

这有点棘手。我对 Plotting different columns on the same file using boxes 的回答显示了如何对数字 x 轴完成此操作。如果您有时间数据,则必须使用 timecolumn(1)而不是 $1 ,就是这样:

reset
xval = -1e10
max(x, y) = (x > y ? x : y)
maxval = 0

set timefmt '%Y-%m-%d'
set xdata time

plot 'data.txt' using (val = $2, timecolumn(1)):\
(maxval_prev = (xval == timecolumn(1) ? maxval : 0), \
maxval = (xval == timecolumn(1) ? max(maxval, val) : val),\
xval = timecolumn(1), \
(maxval > maxval_prev ? maxval-maxval_prev : 0)\
) \
smooth frequency lw 3 with linespoints t 'maximum values'

这给出了结果(4.6.3):

enter image description here

有关更详细的解释,请参阅上面的链接答案。

关于plot - gnuplot:绘制数据并使用重复 x 值的最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21987858/

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