我正在打印具有以下格式的时间序列
> 1400536853 0.011955
> 1400537188 0.013695
> 1400537530 0.010797
> ....
> 1400621709 0.010688
> 1400622023 0.007209
> 1400622338 0.006685
> 1400622653 0.005539
第一列是unix纪元格式的时间戳,第二列是要绘制的变量。请注意,第一行的时间戳与“ 2014年5月20日星期二00:00:53”相对应,最后一行与“ 2014年5月20日星期二23:50:53”相对应。我使用以下命令对此进行了验证:
date -d @<timestamp>
我正在使用以下脚本来绘制时间序列
set xdata time
set timefmt '%s'
set format x '%H'
plot 'series.txt' using 1:2 with lines notitle
但是我得到了一个小时数在22、00、02到... 22之间的图形,如下图所示:
对于如何解决此问题,我将不胜感激。这可能与未正确设置时区有关吗?提前谢谢了
Gnuplot无法更改时区,并且将UTC用于所有时间数据。这是您2小时班次的来源:
$ date -u -d @1400536853
Mo 19. Mai 22:00:53 UTC 2014
在您的特定情况下,您可以在using
语句中添加两个小时:
set xdata time
set timefmt '%s'
set format x '%H'
plot 'series.txt' using ($1 + 2*60*60):2 with lines notitle
请注意,这明确地假定您仅在相同时区的计算机上运行脚本。我认为没有通用的方法可以在gnuplot中的时区之间进行转换,因为它不支持它们。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句