我正在使用 Matplotlib 的pyplot.plot()
函数绘制一些数据。
数据的X值是整数,但这些数字并不意味着什么。 例如:
x_vals = [2, 34, 456, 999, 10000]
但是,matplotlib认为这些是实际的X值。它缩放X轴并在图上显示这样的刻度:
|
|
|
|
+---+----+----+----+----+
0 2000 4000 6000 8000 10000
我想要的是使用matplotlib盲目地使用X轴绘图:
|
|
|
|
+---+----+----+----+
2 34 456 999 10000
也就是说,我希望刻度的数量等于我传入的X值的数量。我还希望盲目地解释这些值,可能是字符串。
如何在Matplotlib中完成?
答案 0 :(得分:2)
一种可能的解决方案是绘制range
而不是沿x轴的实际x值,然后手动将标签更改为所需的值。
换句话说:
plt.plot(range(len(y_values)), y_values)
plt.gca().xaxis.set_ticklabels(x_values)
在这种情况下,x_values = [2, 34, 10000]
。