gnuplot上的x轴值

时间:2013-06-18 02:11:32

标签: linux graph gnuplot

我正在玩gnuplot.My数据集看起来像这样。

1     0.530000  0.510000
2     0.420000  0.310000
4     0.400000  0.160000
8     0.390000  0.070000
16    0.390000  0.040000
32    0.310000  0.020000
64    0.170000  0.020000
128   0.070000  0.000000
256   0.030000  0.000000
512   0.020000  0.000000
1024  0.000000  0.000000

我的gnuplot文件是给定的。

#!/usr/bin/gnuplot
reset
set terminal png

set ylabel "time in ms"

set xlabel "k"

set title "update every kth element"
set key reverse Left outside
set grid

set style data linespoints

set output 'cache_access.png'
plot "time_mem_access.dat" using 1:2 title "cache access 1", \
      ""                   using 1:3 title "cache access 2"

我得到的图表如下所示。

enter image description here

我的问题是我希望x轴在第一列中显示确切的值

i.e 1,2,4,8,16,32,64 etc.

我无法在线找到有关如何完成此操作的任何文档。

1 个答案:

答案 0 :(得分:14)

而不是打电话:

plot "time_mem_access.dat" using 1:2 title "cache access 1", \
      ""                   using 1:3 title "cache access 2"

您可以尝试:

plot "time_mem_access.dat" using 1:2:xtic(1) title "cache access 1", \
      ""                   using 1:3:xtic(1) title "cache access 2"

这会给你以下情节: enter image description here

但是,您可能需要记录x值:

plot "time_mem_access.dat" using (log($1)):2:xtic(1) title "cache access 1", \
      ""                   using (log($1)):3:xtic(1) title "cache access 2"

哪会给你: enter image description here