通过命令行工具(如gnuplot)绘制时间 - 值图表

时间:2014-07-27 23:15:00

标签: shell command-line plot gnuplot

我们说我有一个名为data的文件:

02.03.14    17.00   0.00    17.00   Desc
01.03.14    2.82    1.68    1.14    Desc
02.03.14    1.04    0.00    1.04    Desc
06.03.14    6.00    0.00    6.00    Desc
06.03.14    2.30    0.00    2.30    Desc
06.03.14    2.30    0.00    2.30    Desc

我想将1st列用作x轴,将4th列用作y轴,并创建时间值图。

  • 如何让输出更具可读性? x轴不可读,较大的值也使较小的值不可读。
  • 其他图表类型如何显示,例如点/线/填充基础?有没有比使用lines作为时间价值图表更好的表示形式?

这就是我目前所拥有的:

#!/usr/bin/env gnuplot
set timefmt '%d.%m.%Y'
set xdata time
set terminal png
set output 'output.png'
plot    'data' u 1:4 w lines, \
        'data' u 1:3 w lines, \
        'data' u 1:3 w lines

它产生:

enter image description here

1 个答案:

答案 0 :(得分:0)

首先,如果可能,数据文件应该可用。其次,就像其中一条评论中一样,如果你有像250这样的非常大的值和像2.5这样的非常小的值,那么除了将y标度设置为log(set log scale y之外别无他法。 })。

使用适当的tic间隔(set xtics start,incr,end)可以整理凌乱的x轴。