matplotlib 在顶部显示奇怪的偏移量

matplot lib showing strange offset at top

Matplotlib 在某些非常大的值上表现异常。

我希望图表显示实际数字,在我的例子中是 61577 和 61578。

相反,它只显示 1 的位置,并在最顶部执行 +6.15700000e4。我是否需要指定一个选项来让图表显示实际值而不是偏移量?

确实应用了某种比例尺;当我将数字更改为 1577 和 1578 时,看起来就像您期望的那样。那么我需要关闭什么?

简单测试用例:

import matplotlib.pyplot as plt
y = [61577,61577,61577,61577,61577,61577,61578,61577,61578,61578,61578,61578,61578,61578,61578,61578,61578,61578,61578]
x = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18]

plt.plot(x, y)

plt.xlabel('x - axis')
plt.ylabel('y - axis')

plt.show()

这是因为y轴的数字太大,改变了图表的范围。 +6.15700000e4 只是 6,157 的标准符号。它在 y 轴“6157”上显示数据的前 4 个数字,然后显示最后一个数字,以便更容易查看图表。这也是为什么尖峰看起来很大,但实际上它只是1的变化。这是一种改变轴范围的方法,所以它不使用科学记数法

import matplotlib.pyplot as plt
y = [61577,61577,61577,61577,61577,61577,61578,61577,61578,61578,61578,61578,61578,61578,61578,61578,61578,61578,61578]
x = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18]

_, ax = plt.subplots()
ax.plot(x, y)
ax.ticklabel_format(useOffset=False)
plt.xlabel('x - axis')
plt.ylabel('y - axis')
plt.show()