如何强制 matplotlib 将 x 轴上的值显示为整数

use*_*996 16 python plot matplotlib

像这样的代码:

plt.ticklabel_format(style='plain', axis='x', useOffset=False)
plt.plot(range(1, 3), logger.acc)
plt.xlabel("Epochs")
plt.ylabel("Accuracy")
plt.show()
Run Code Online (Sandbox Code Playgroud)

产生这样的结果:
阴谋

我希望 x 轴只有整数。应该有一个简单的标志,但我找不到它。

She*_*ore 18

只需使用以下内容,将 设置xticksrange()函数生成的整数值。您可以用您正在绘制的任何范围替换数字

plt.xticks(range(1,3))
Run Code Online (Sandbox Code Playgroud)


Imp*_*est 10

您可以将 aMultipleLocator与 base 设置为1.

import matplotlib.pyplot as plt
import matplotlib.ticker as mticker

class logger():
    acc = [ .26, .36]

plt.ticklabel_format(style='plain', axis='x', useOffset=False)
plt.plot(range(1, 3), logger.acc)
plt.gca().xaxis.set_major_locator(mticker.MultipleLocator(1))
plt.xlabel("Epochs")
plt.ylabel("Accuracy")
plt.show()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明