Je dois créer plusieurs colonnes et lignes de tailles inégales dans matplotlib. Voici un exemple de code :
a = np.random.rand(20, 20)
b = np.random.rand(20, 5)
c = np.random.rand(5, 20)
d = np.random.rand(5,5)
arrays = [a,b,c,d]
fig, axs = plt.subplots(2, 2, sharex='col', sharey= 'row', figsize=(10,10))
for ax, ar in zip(axs.flatten(), arrays):
ax.imshow(ar)
Cependant, voici le résultat obtenu :
La colonne de droite a des images de largeur inégale pour la première et la deuxième ligne, et je voudrais qu'elles soient égales (en gros, réduire l'image en bas à droite pour avoir la même échelle que les autres images). J'avais beaucoup fait de recherches à ce sujet, mais rien ne semble fonctionner. J'avais essayé tight_layout(), quelques autres astuces de mise en forme, mais tout cela est resté sans effet...