Comment ajuster l’espacement entre les sous-parcelles Matplotlib



Vous pouvez souvent utiliser des sous-tracés pour afficher plusieurs tracés les uns à côté des autres dans Matplotlib. Malheureusement, ces sous-intrigues ont tendance à se chevaucher par défaut.

Le moyen le plus simple de résoudre ce problème consiste à utiliser la fonction Matplotlib Tight_layout() . Ce tutoriel explique comment utiliser cette fonction en pratique.

Créer des sous-parcelles

Considérons la disposition suivante de 4 sous-parcelles en 2 colonnes et 2 lignes :

import matplotlib.pyplot as plt

#define subplots
fig, ax = plt.subplots(2, 2)

#display subplots 
plt.show()

Remarquez comment les sous-intrigues se chevauchent un peu.

Ajuster l’espacement des sous-parcelles à l’aide de Tight_layout()

Le moyen le plus simple de résoudre ce problème de chevauchement consiste à utiliser la fonction Matplotlib Tight_layout() :

import matplotlib.pyplot as plt

#define subplots
fig, ax = plt.subplots(2, 2)
fig.tight_layout()

#display subplots 
plt.show()

Ajuster l'espacement des sous-parcelles Matplotlib

Ajuster l’espacement des titres de sous-intrigues

Dans certains cas, vous pouvez également avoir des titres pour chacune de vos sous-intrigues. Malheureusement, même la fonction Tight_layout() a tendance à provoquer un chevauchement des titres des sous-intrigues :

import matplotlib.pyplot as plt

#define subplots
fig, ax = plt.subplots(2, 2)
fig.tight_layout()

#define subplot titles
ax[0, 0].set_title('First Subplot')
ax[0, 1].set_title('Second Subplot')
ax[1, 0].set_title('Third Subplot')
ax[1, 1].set_title('Fourth Subplot')

#display subplots 
plt.show()

Sous-parcelles avec des titres dans Matplotlib

La façon de résoudre ce problème consiste à augmenter le remplissage en hauteur entre les sous-parcelles à l’aide de l’argument h_pad :

import matplotlib.pyplot as plt

#define subplots
fig, ax = plt.subplots(2, 2)
fig.tight_layout(h_pad=2)

#define subplot titles
ax[0, 0].set_title('First Subplot')
ax[0, 1].set_title('Second Subplot')
ax[1, 0].set_title('Third Subplot')
ax[1, 1].set_title('Fourth Subplot')

#display subplots 
plt.show()

Espacement des titres de sous-intrigue Matplotlib

Ajuster l’espacement du titre global

Si vous avez un titre global, vous pouvez utiliser la fonction subplots_adjust() pour vous assurer qu’il ne chevauche pas les titres des sous-intrigues :

import matplotlib.pyplot as plt

#define subplots
fig, ax = plt.subplots(2, 2)
fig.tight_layout(h_pad=2)

#define subplot titles
ax[0, 0].set_title('First Subplot')
ax[0, 1].set_title('Second Subplot')
ax[1, 0].set_title('Third Subplot')
ax[1, 1].set_title('Fourth Subplot')

#add overall title and adjust it so that it doesn't overlap with subplot titles
fig.suptitle('Overall Title')
plt.subplots_adjust(top=0.85)

#display subplots 
plt.show()

Espacement des titres dans Matplotlib

Vous pouvez trouver plus de didacticiels Matplotlib ici .

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *