使用与轴关联的colorbar()matplotlib

使用与轴关联的colorbar()matplotlib,matplotlib,Matplotlib,我想用colorbar()快速绘制轮廓图() 如果我只使用一个绘图: plt.contourf(X, Y, Z, 20, cmap='RdGy') plt.colorbar(); 但是如果我使用斧头,我应该怎么做?即 fig, ax = plt.subplots(2) ax[0].contourf(X, Y, Z, 20, cmap='RdBu'); ax[1].contourf(Y, X, Z, 20, cmap='RdBu'); ax[0].colorbar(); #does not

我想用colorbar()快速绘制轮廓图()

如果我只使用一个绘图:

plt.contourf(X, Y, Z, 20, cmap='RdGy')
plt.colorbar();
但是如果我使用斧头,我应该怎么做?即

fig, ax = plt.subplots(2)

ax[0].contourf(X, Y, Z, 20, cmap='RdBu');
ax[1].contourf(Y, X, Z, 20, cmap='RdBu');

ax[0].colorbar(); #does not work
我希望有比手动定义分隔符更快的方法,例如第一个示例中的plt.colorbar()。

是一种图形方法。它将ScalarMappable作为输入,并可以选择放置颜色条旁边的轴

fig, ax = plt.subplots(2)

im = ax[0].contourf(X, Y, Z, 20, cmap='RdBu')
im2 = ax[1].contourf(Y, X, Z, 20, cmap='RdBu')

fig.colorbar(im, ax=ax[0])

有一个关于使colorbar作为方法上的轴可用的讨论。请随意投稿。

我可以确认这是非常有效的。事实上,如果一个轴包含一个ScalarMapable,那么colorbar可以变得足够聪明,能够理解这一点,并使其成为轴的一种方法。我将查看github中的讨论。