用颜色条调整子图

时间:2017-04-07 00:37:21

标签: matplotlib subplot colorbar

我做了以下可视化。 enter image description here我无法弄清楚如何根据另外两个(他们共享x轴)调整第三个子图的大小。 给出here的属性没有多大帮助,我在SO上找到的例子似乎也解决了与我不同的案例。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

一种简单的方法是添加另外两个颜色条,但使它们不可见。

import matplotlib.pyplot as plt

fig, (ax,ax2,ax3) = plt.subplots(3,1, sharex=True)
ax.plot([1,3,5],[1,2,5])
ax2.plot([3,5,9],[4,2,2])
ax3.plot([5,7,12],[1,5,3])

sm = plt.cm.ScalarMappable()
sm.set_array([])
fig.colorbar(sm, ax=ax3)

# add two more colorbars, but make them invisible
fig.colorbar(sm, ax=ax2).ax.set_visible(False)
fig.colorbar(sm, ax=ax).ax.set_visible(False)

plt.subplots_adjust(right=1)
plt.show()

enter image description here