我不知道如何使用gnuplot数据文件

时间:2013-04-07 16:51:22

标签: gnuplot

我有一个作业,我必须从库中执行一个函数,我的版本在3个体系结构,nehalem,opteron和quad上执行。我已经为每个架构获取了我的运行时间,以及实际功能的运行时间。现在我必须用gnuplot创建一些图来对它们进行比较,但我不知道如何使用它。我需要一些帮助来设置数据文件以及plot命令的外观。假设我有这个数据文件(不知道如何写它来工作):

N = 10000(这是矩阵的顺序)

对于nehalem:my_time cblas_tyme optimized_time

对于opteron:my_time cblas_time optimized_time

对于quad:my_time cblas_time optimized_time。

这将导致显示在所有具有不同功能的架构上计算10000x10000矩阵所需的时间。

1 个答案:

答案 0 :(得分:0)

好像你想绘制一个条形图。

数据文件示例:

"my_time nehalem" 100 
"cblas_tyme nehalem" 120
"optimized_time nehalem" 100 
"my_time opteron" 200
"cblas_tyme opteron" 222
"optimized_time opteron" 202
"my_time quad" 103
"cblas_tyme quad" 100
"optimized_time quad" 99

您可以使用以下方式进行绘图:

plot "data.dat" using 2:xtic(1) with histogram

有关更多直方图示例,请参阅here;有关详情,请参见here

修改

解决您的评论,您可能想要使用与此类似的数据文件(例如data.dat):

N simple-quad simple-nehalem simple-opteron alt-quad alt-nehalem alt-opteron
10000 2  3  3  2  7  7  
15000 5  4  4  7  14 14 
20000 10 12 12 15 17 20

您可以使用以下脚本绘制此图:

set autoscale y
set autoscale x
set grid
set xtic auto
set ytic auto
set xlabel "N"
set ylabel "Time"
plot "data.dat" every ::1 using 1:2 title "simple-quad" with linespoints, \
"data.dat" every ::1 using 1:3 title "simple-nehalem" with linespoints \
"data.dat" every ::1 using 1:4 title "simple-opteron" with linespoints \
"data.dat" every ::1 using 1:5 title "alt-quad" with linespoints \
"data.dat" every ::1 using 1:6 title "alt-nehalem" with linespoints \
"data.dat" every ::1 using 1:7 title "alt-opteron" with linespoints