Все мои цветные полосы отображаются на последней оси imshow()
:

Вот мой код:
"""
Least replicable unit
"""
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
number = 3
Images = np.random.rand(400, number)
Spectra = np.random.rand(100, number)
fig, cax = plt.subplots(nrows=number, ncols=2)
for i in range(number):
cax[i, 0].plot(Spectra[:, i])
P = cax[i, 1].imshow(Images[:,i].reshape((20, 20)))
fig.colorbar(P)
plt.tight_layout()
Что я делаю не так и как это исправить?