首页 > 解决方案 > 仅用于其中一个子图的 matplotlib 颜色图

问题描述

我正在用 matplotlib 绘制一些图像,如下所示:

fig, axes = plt.subplots(1, len(slices))
    for i, slice in enumerate(slices):
        if i != 3:
            axes[i].imshow(slice.T, cmap="gray", origin="lower")
        else:
            axes[i].imshow(slice.T, cmap="hot", origin="lower")

如您所见,其中一个子图轴是热图。是否可以在该子图旁边有一个颜色图?

编辑:

好的,我可以这样做:

fig.colorbar(im, ax=axes[i])

这显示了颜色条,但它不成比例地大!是否可以使其与情节的其余部分具有相同的高度。

标签: pythonmatplotlib

解决方案


好的,对其他人来说,这是有效的:

im = axes[i].imshow(slice.T, cmap="hot", origin="lower")
fig.colorbar(im, ax=axes[i], fraction=0.046, pad=0.04)

推荐阅读