matplotlib.pyplot.xticks()的问题

2024-06-01 10:10:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试着按如下方式绘制方块图:

import matplotlib.pyplot as plt

plt.figure()
plt.xlabel("X")
plt.ylabel("Y")
plt.xticks([1,2,3,4], ["a", "b", "c", "d"])
plt.boxplot(data)
plt.show()

但是,plt.xticks出现了一个错误,它说tuple对象不可调用。我的x轴标记为1,2,3,4,而不是“a”、“b”、“c”、“d”。

我在这里学习教程:Rotating custom tick labels


Tags: importdatamatplotlibasshow方式绘制plt
2条回答

构建打印的顺序很重要;必须首先使用数据创建打印,然后根据需要调整设置:

import matplotlib.pyplot as plt   # <-- you had a typo here

plt.figure()
plt.xlabel("X")
plt.ylabel("Y")
plt.boxplot([1, 1, 2, 3, 4])
plt.xticks([1,2,3,4], ["a", "b", "c", "d"])
plt.show()

enter image description here

另一个原因是如果您错误地重新定义了plt.xticks。例如,如果意外运行:

plt.xticks = ([1,2,3,4], ['a','b','c','d']) #wrong format, uh oh

现在您已经将plt.xticks重新定义为元组变量。当你用正确的方式称呼它时:

plt.xticks([1,2,3,4], ["a", "b", "c", "d"])

尝试调用元组会出错。简单的解决方案是重新启动会话刷新,或者至少重新导入matplotlib.pyplot,这将覆盖您创建的错误变量。

相关问题 更多 >