Gnuplot 如何绘制相同的值,直到其发生变化?

Gnuplot 如何绘制相同的值,直到其发生变化?,gnuplot,Gnuplot,我在文件中有数据,它们有日期/时间点和值。数据中的行仅在值更改时写入。例如: 10:01 12.00 10:12 8.00 10:14 9.00 我想画一个图形,它不会从一个点到另一个点画直线,画斜线,而是保持水平线直到点10:12,然后跳到值8.00,然后保持水平线在值8.00直到结束,然后跳到9.00 我四处搜索,但挑战是我不知道这样一个图形的正确名称是什么。我希望你能帮我用gnuplot画出来。提前谢谢。实际上,还有另一种步骤样式fillsteps。 我在自己的基金里找到了一个

我在文件中有数据,它们有日期/时间点和值。数据中的行仅在值更改时写入。例如:

10:01  12.00
10:12   8.00
10:14   9.00
我想画一个图形,它不会从一个点到另一个点画直线,画斜线,而是保持水平线直到点10:12,然后跳到值8.00,然后保持水平线在值8.00直到结束,然后跳到9.00


我四处搜索,但挑战是我不知道这样一个图形的正确名称是什么。我希望你能帮我用gnuplot画出来。提前谢谢。

实际上,还有另一种步骤样式
fillsteps
。 我在自己的基金里找到了一个小例子。 它还说明了当数据中有空行时样式的行为。为了更好地看到差异,这些线稍微移动了一下

代码:

### plot with steps
reset session

$Data <<EOD
1 -1
2 -1
3  1
4 -1

6 -1
7 -1

8  0.5

9 -1
11 -1
13  1
14  1
EOD

set colorsequence classic
set ytics 1
set mxtics 2
set yrange[-1.2:1.9]
set grid xtics, mxtics, ytics
set key center top
  plot \
    $Data u 1:2 w fillsteps lw 0 fs transparent solid 0.1 fc "black" t "fillsteps",\
    '' u ($1-0.05):($2*1.02) w steps lt 1 lw 2 t "steps",\
    '' u ($1+0.05):($2*0.97) w fsteps lt 2 lw 2 t "fsteps",\
    '' u 1:2 w histeps lt 3 lw 2 t "histeps",\
    '' u 1:2 w p lt 7 lw 2 lc "black" t " data points"
### end of code
###用步骤绘图
重置会话

$Data我同意,如果您不知道它是如何调用的,则很难搜索它。检查,第一个示例显示了
步骤
fsteps
histeps
之间的区别。感谢您的精彩回答,以这样的方式回答,我还学到了很多对未来有用的东西。我的问题的答案是“使用步骤”。我会投赞成票,但我的声誉不到15,我是不被允许的。再次感谢theozh,不客气!您可以稍后在投票时获得>15;-)。实际上,为了说明用空行分隔的点不会用
step
fsteps
fillsteps
绘制,而是用
histeps
绘制,我略微更改了数据。