为什么我的gnuplot结果(csv中的png)不符合我的预期?

时间:2018-11-21 04:48:11

标签: plot graph gnuplot

(gnuplot 5.2.5,Centos 7)我已经尝试了大约8个google示例,但结果仍未接近。
这是我的数据:

  

时间戳记,1016.qmgr,1893.sshd,1.systemd,2017.sshd
  2018-11-21.04:23:03,0.1,1.0,4.0,2.0
  2018-11-21.04:23:04,0.2,2.0,5.0,4.0
  2018-11-21.04:23:05,0.3,3.0,6.0,8.0

这是我的情节设置:

 set datafile separator ","
 set title "CPU % Usage per task over time"
 set ylabel '% CPU'
 set xlabel 'Time'
 set grid
 set term png
 set output '10.png'
 set key autotitle columnheader
 plot for [i=2:5] 'Results.10/CPU.csv' using 1:i'

基本上,我期待这样的事情: enter image description here

但是我得到了这样的东西: enter image description here

有什么想法要在绘图参数文件中设置什么?

1 个答案:

答案 0 :(得分:1)

您需要告诉gnuplot第一列包含时间数据,以及格式是什么:

set xdata time
set timefmt "%Y-%m-%d.%H:%M:%S"

还有其他方法,但这是处理指定为字符串的时间的最简单方法。

[修正的答案] 如果只希望将第一列的内容沿x打印为不透明的文本字符串,则命令为:

plot for [i=2:5] 'Results.10/CPU.csv' using 0:i:xticlabels(1)

由于这些字符串很长,您可能需要旋转标签,使它们不会重叠:

set xtics rotate by -45