gnuplot 时间格式变量以空格分隔

gnuplot time format variable separated by spaces

我有一个数据集,其中的列由空格分隔。这些列是按此顺序的“年月日小时数据”。

我尝试了几种时间格式,例如“%Y%m%d%H”、“%Y%m%d%k”、“%Y %m %d %k”,但它们没有工作。我认为这是因为列改变了位数。

这种数据适合哪种时间格式?

这是数据集的示例。

   2002  12  31   9    65
   2002  12  31  10    60
   2002  12  31  11    56
   2002  12  31  12    50
   2002  12  31  13    45
   2002  12  31  14    38
   2002  12  31  15    45
   2002  12  31  16    50
   2002  12  31  17    47
   2002  12  31  18    44
   2002  12  31  19    40
   2002  12  31  20    32
   2002  12  31  21    35
   2002  12  31  22    40
   2002  12  31  23    33
   2003   1   1   0    28
   2003   1   1   1    25

这是我的代码:

     set xdata time
     set timefmt "%Y%m%d%k"
     plot   "datafile.dat" using 1:2  
     set terminal png enhanced  
     set output "series.png"
     replot

在你的日期里有 spaces 是可以的,你必须只正确计算列数:你的数据在第五列,无论 timefmt 消耗了多少列:

set xdata time
set timefmt "%Y %m %d %H"
plot   "datafile.dat" using 1:5

并且 timefmt 中的单个 space 匹配数据中的一个或多个白色 spaces。