fig, axs = plt.subplots(
3,3,
figsize=(5.2,5.8), layout='constrained',
sharex=True, sharey=True,
dpi=200
)
Nus = [20, 30, 60]
for i in range(3):
for j in range(3):
qT = qplanes[3*i + j]
im = axs[j,i].imshow(qT.T, extent=[0,8,0,8], origin='lower', vmin=0, vmax=Nus[i], cmap='cmo.ice_r')
fig.colorbar(im, ax=axs[:,i], orientation='horizontal', label='$q_\\theta$', extend='max')
axs[-1,i].set_xlabel('$x/H$')
axs[i,0].set_ylabel('$z/H$')
axs[-1,i].set_xticks([0,4,8])
axs[0,i].set_title('$Gr=10^%i$' % (i+6))
axs[i,-1].annotate('$Re=10^{%.1f}$' % (3+0.5*i), (1.05, 0.5), rotation=90, ha='left', va='center', xycoords='axes fraction')
alph = 'abcdefghi'
for i, ax in enumerate(axs.flatten()):
ax.annotate('$('+alph[i]+')$', (0.0,1.02), ha='left', va='bottom', xycoords='axes fraction', color='k')
plt.show()