2016-12-14 145 views
0

我无法得到日期/时间在gnuplot中工作。以下是我认为正确的,下面描述的错误。日期/时间轴在gnuplot

set xdata time 
set timefmt "%Y-%j/%H:%M:%S" 
#set xrange ["2016-349/00:56:00":"2016-349/00:57:00"] 
set format x "%H:%M:%S" 

plot "-" using ($1):($2) with lines 
2016-349/00:56:26.560000 0.587785252292582 
2016-349/00:56:27.560000 1.59702608337727e-13 
2016-349/00:56:28.560000 -0.587785252292324 
e 

pause mouse any 

With set xrange注释掉如图所示,我得到这个警告。

Warning: empty x range [2016:2016], adjusting to [1995.84:2036.16] 

和x轴似乎没有被基于所述数据的范围内,从0点33分15秒到0时34分○○秒蜱。结果图是00:33:36的垂直线,但这些点是正弦波的一部分。

取消注释set xrange,我得到这个错误,而不是。

line 6: all points y value undefined! 

我得到gnuplot 4.2 PATCHLEVEL 6和5.0 PATCHLEVEL 1.感谢您的帮助,您可以提供相同的行为。

吉姆

回答

0

的错误是在这里:

plot "-" using ($1):($2) with lines 

只能在表达式中使用$,否则只使用数字本身:

plot "-" using 1:2 with lines 
+0

问题解决了,但我不理解为什么。 “($ 1)”不是一个有效的表达式吗? – Jim

+0

另外,为了保持我的例子简单,我删除了一行在我原来的'set datafile missing'?''中。当数据列中存在问号时,我想要在图中留下空白,并且认为需要使用括号才能获得该问题。 – Jim

+0

'$ 1'是'column(1)'的快捷方式,它将列解析为数字。只有'timecolumn(1)'会分析时间。仅用'1'就可以自动选择这两者。 – Christoph