49

我使用一个技巧来绘制一个高度与主轴相匹配的颜色条。代码就像

import matplotlib.pyplot as plt
from mpl_toolkits.axes_grid1 import make_axes_locatable
import numpy as np

ax = plt.subplot(111)
im = ax.imshow(np.arange(100).reshape((10,10)))

# create an axes on the right side of ax. The width of cax will be 5%
# of ax and the padding between cax and ax will be fixed at 0.05 inch.
divider = make_axes_locatable(ax)
cax = divider.append_axes("right", size="5%", pad=0.05)

plt.colorbar(im, cax=cax)

这个技巧效果很好。但是,由于附加了新轴,因此图形的当前实例变为 cax - 附加轴。结果,如果执行如下操作

plt.text(0,0,'whatever')

文本将绘制在 cax 而不是 ax - im 所属的轴上。

同时, gcf().axes 显示两个轴。

我的问题是:如何使当前轴实例(由 gca() 返回)成为 im 所属的原始轴。

4

1 回答 1

96

用于plt.sca(ax)设置当前坐标区,您想要激活ax的对象在哪里。Axes

于 2013-10-28T01:11:09.053 回答