你好,我有使用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的解决方案吗?
非常感谢您!
答案 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)