Gnuplot误读了时间数据

时间:2017-04-03 09:03:08

标签: gnuplot

我似乎无法让gnuplot正确绘制我的时间数据。 (我使用的是4.6版,补丁级别3。)

对于MWE(嗯,非工作......),输入文件

reset

set xdata time
set timefmt "%H:%M:%S"
set format x "%H:%M:%S"

plot '-' using ($1):($2) with lines lw 3
15:36:12  1.0
15:43:17  3.0
16:12:02  2.0
e

产生以下输出: enter image description here

显然,gnuplot将小时数解释为秒,忽略其余时间。我已经尝试了一堆其他格式字符串(也是单引号/双引号),但gnuplot似乎忽略了除第一个数字之外的所有内容。

我的格式有问题,或者这是一个错误,还是其他什么?

1 个答案:

答案 0 :(得分:3)

使用$1,您明确地选择第一列的数字值,该值绕过任何gnuplot自动记录以适当地解释列值(在您的情况下为时间值)。只需使用using 1:2

reset
set xdata time
set timefmt "%H:%M:%S"
set format x "%H:%M:%S"

plot '-' using 1:2 with lines lw 3
15:36:12  1.0
15:43:17  3.0
16:12:02  2.0
e

仅在使用相应列中的实际数值进行计算时才使用语法$1$1column(1)的快捷方式,gnuplot也知道stringcolumn(1)timecolumn(1)用于其他目的。