Python Matplotlib yaxis范围是否使用绝对值而不是偏移值显示?

Python Matplotlib yaxis范围是否使用绝对值而不是偏移值显示?,python,numpy,matplotlib,Python,Numpy,Matplotlib,我有以下numpy数据范围(usec时间戳的增量): 使用matplotlib.pyplot打印时: import matplotlib.pyplot as plt plt.plot( deltas ) plt.show() 我得到下面的情节。为什么Y轴会以这种方式缩放?如何将Y轴标记为数据,而不是数据的偏移?有时绘图是“+4.nnn”,有时不是(取决于数据范围?) “奇怪地”绘制: “正确”绘制: 将useOffset设置为False: ax = plt.gca() ax.tick

我有以下numpy数据范围(usec时间戳的增量):

使用matplotlib.pyplot打印时:

 import matplotlib.pyplot as plt
 plt.plot( deltas ) 
 plt.show()
我得到下面的情节。为什么Y轴会以这种方式缩放?如何将Y轴标记为数据,而不是数据的偏移?有时绘图是“+4.nnn”,有时不是(取决于数据范围?)

“奇怪地”绘制:

“正确”绘制:

将useOffset设置为False:

ax = plt.gca()
ax.ticklabel_format(useOffset=False)
你也可以使用

ax = plt.gca()
ax.set_yticklabels(ax.get_yticks())
虽然我更喜欢@HYRY的答案。

建议禁用偏移量作为全局设置,这对我很有用:

matplotlib.rcParams['axes.formatter.useoffset'] = False

这在MPL1.3.0中不再适用于我。它说这现在只适用于ScalarFormatter。所以这里的简短答案为我解决了这个问题:
ax.get\u yaxis().get\u major\u formatter().set\u usecoffset(False)
这个答案很容易导致完全错误的结果。在不固定位置的情况下,切勿设置标签!!最好使用其他答案。我喜欢这个选项。我遇到很少的情况下,我想利用偏移设置。
matplotlib.rcParams['axes.formatter.useoffset'] = False