如何在 gnuplot 中绘制随机 x 值

How to plot random x-values in gnuplot

我有一个包含两列的数据集,(x,y) 看起来像:

4 16
1 1
5 25
3 9
7 49
0 0
2 4

现在我想在 gnuplot u 1:2 中按照第 1 列的排列顺序绘制它。基本上在 x 轴上,gnuplot 应该先有 4 个,然后是 1 个,然后是 5 个,依此类推。是否可以使用 gnuplot 或任何其他绘图工具?

使用 gnuplot,您可以使用行号作为 x 值,并将第一列的值用作 xtic 标签:

plot 'data.txt' using 0:2:xtic(1) w lp pt 7 lw 2

由于您还标记了 matplotlib,这里有一个快速脚本可以制作相同的情节。您只需要绘制 y,然后将 xticklabels 设置为 x

import matplotlib.pyplot as plt
import numpy as np

x,y = np.genfromtxt('data.txt',unpack=True)

plt.plot(y,'ko-')
plt.gca().set_xticklabels(x)

plt.show()