【发布时间】:2021-10-16 12:18:10
【问题描述】:
我正在尝试使用 gridspec 以网格的形式绘制 6 个图。我想在底部的第 2 列和第 3 列之间放置一个颜色条。
我的代码如下,但它生成了 6 个颜色条。如何更改此代码,以便在两列之间的底部放置一个颜色条?
import matplotlib.gridspec as gridspec
import matplotlib.pyplot as plt
from mpl_toolkits.axes_grid1.inset_locator import inset_axes
plt.figure(figsize=(8, 6))
gs = gridspec.GridSpec(2, 3)
gs.update(wspace= 1)
cmaps = ['RdBu_r', 'viridis', 'viridis']
for i in range(2):
for j in range(3):
ax = plt.subplot(gs[i, j])
image = ax.pcolormesh(np.random.random((20, 20)) * (j + 1),
cmap=cmaps[j])
#image = ax.imshow(im)
axins = inset_axes(ax,
width="10%",
height="100%",
loc='lower left',
bbox_to_anchor=(1.05, 0.0, 1, 1),
bbox_transform=ax.transAxes,
borderpad=0
)
cb = plt.colorbar(image, cax=axins)
编辑:如果我不清楚,我很抱歉。我希望将颜色条水平放置在底部,跨越第 2 列和第 3 列(我用红色标记了我想要放置的位置)
【问题讨论】:
标签: python matplotlib plot subplot colorbar