【发布时间】:2020-12-17 12:56:52
【问题描述】:
我正在尝试从记录多个 GPU 数据的数据集中绘制多条表示 GPU 使用情况随时间变化的线。每行都包含时间戳、GPU 索引和使用百分比。
我的数据集如下所示:
$ cat gpu.txt
#time #index # usage (%)
1,1,10
1,2,5
2,1,20
2,2,10
3,1,40
3,2,30
这是我的 gnuplot 脚本:
$ cat plot.gplot
set datafile separator ","
set autoscale # scale axes automatically
unset log # remove any log-scaling
unset label # remove any previous labels
set xtic auto # set xtics automatically
set ytic auto # set ytics automatically
set title
set term png
set title "GPU usage"
set xlabel "Time"
set ylabel "Usage"
set output "gpu.png"
plot "gpu.txt" using ($2 == 1 ? $1 : NaN):($2 == 1 ? $3 : NaN) title 'GPU1' with linespoints ls 10 linecolor rgb "blue", \
"gpu.txt" using ($2 == 2 ? $1 : NaN):($2 == 2 ? $3 : NaN) title 'GPU 2' with linespoints ls 10 linecolor rgb "red", \
不幸的是,这只会绘制奇异数据点,而不会绘制线条。我认为这是因为“丢失”数据点——显然情况并非如此,因为我有自定义过滤器来绘制每个 GPU 索引的使用数据。我试图通过 NaN 值向 gnuplot 表明这一点,但它似乎不起作用。
示例输出:
【问题讨论】:
标签: gnuplot