Latex 不规则gnuplot x值

Latex 不规则gnuplot x值,latex,gnuplot,Latex,Gnuplot,我有一些数据(k-选择算法的基准测试结果)具有不规则的x-值。我明确地给它们贴上标签(1、50、100、500、1000、2500和5000) 由于这些值不是线性增加(或指数增加,尽管将x轴设为对数刻度确实会有所改善,但bug在1和50之间留下了巨大的差距),它们奇怪地分散并聚集在一起。是否有办法缩放x轴,以便以均匀的间距绘制这些数据点 下面是一个网格间距示例(eps文件中不可见标签和图例,稍后由graphicx包绘制)以及我正在使用的gnuplot命令 set terminal epslate

我有一些数据(k-选择算法的基准测试结果)具有不规则的x-值。我明确地给它们贴上标签(1、50、100、500、1000、2500和5000)

由于这些值不是线性增加(或指数增加,尽管将x轴设为对数刻度确实会有所改善,但bug在1和50之间留下了巨大的差距),它们奇怪地分散并聚集在一起。是否有办法缩放x轴,以便以均匀的间距绘制这些数据点

下面是一个网格间距示例(eps文件中不可见标签和图例,稍后由graphicx包绘制)以及我正在使用的gnuplot命令

set terminal epslatex

set xlabel 'k'
set ylabel 'seconds'

set tic scale 0
set key Left outside

set xtics rotate
set xtics ('1' 1, '50' 50, '100' 100, '500' 500, '1000' 1000, '2500' 2500, '5000' 5000)

set logscale y
set logscale x
set style data linespoints

set output 'selection.tex'

plot '../data/selection.dat' u 1:($2/1000) t 'Sort', \
     '../data/selection.dat' u 1:($3/1000) t 'Partial Sort', \
     '../data/selection.dat' u 1:($4/1000) t 'Heap', \
     '../data/selection.dat' u 1:($5/1000) t 'Partial Heap', \
     '../data/selection.dat' u 1:($6/1000) t 'Order Statistics'


最干净的方法是使用
xticlabels
命令:

plot '../data/selection.dat' u ($2/1000):xticlabels(1) t 'Sort', \...
这将从第一列获取值并将其用作x轴标签,同时将第二列用作数据

这有点像使用命令

plot 'file' u 2
它只是根据虚拟索引(1,2,3,4…)绘制第二列的数据。这给了数据点一个均匀的间距,这似乎是您在这里想要的