AxesSubplot没有细化的xticks

时间:2019-07-14 09:43:30

标签: python python-3.x matplotlib

你好,我有使用Python编写的代码,该代码允许绘制一些图:

import matplotlib.pyplot as plt
import numpy as np

fig = plt.figure()
ax1 = fig.add_subplot(211)
x1 = np.array(np.arange(9))
y1 = x1
ax1.plot(x1,y1)
ax2 = fig.add_subplot(212)
x2 = np.array(np.arange(9))
y2 = x2
locs, labels = ax2.xticks()
ax2.plot(x2,y2)

问题是该行locs, labels = ax2.xticks()不起作用。我不明白为什么,因为通常我使用以下命令:locs, labels = plt.xticks()并且有效。

您有使用ax的解决方案吗?

非常感谢您!

1 个答案:

答案 0 :(得分:0)

使用轴绘制图时,必须使用ax2.set_xticks()方法设置xticks。

它返回xticks位置的单个列表。所以使用

locs, labels = ax2.set_xticks(x2)  # I pass x2 as the ticks here.

将产生ValueError,而plt.xticks()会返回刻度线的位置和标签。

您必须使用

locs = ax2.set_xticks(x2)