Introduction
Matplotlib est une bibliothèque de visualisation de données pour le langage de programmation Python. Elle fournit une large gamme d'outils pour créer différents types de graphiques et diagrammes. Le module GridSpec dans Matplotlib nous permet de créer des dispositions flexibles et complexes de sous-graphiques. Dans ce tutoriel, nous allons apprendre à utiliser GridSpec pour créer des dispositions de sous-graphiques multi-colonnes/ligne.
Conseils sur la machine virtuelle
Une fois le démarrage de la machine virtuelle terminé, cliquez dans le coin supérieur gauche pour basculer vers l'onglet Notebook pour accéder à Jupyter Notebook pour la pratique.
Parfois, vous devrez peut-être attendre quelques secondes pour que Jupyter Notebook ait fini de charger. La validation des opérations ne peut pas être automatisée en raison des limitations de Jupyter Notebook.
Si vous rencontrez des problèmes pendant l'apprentissage, n'hésitez pas à demander à Labby. Donnez votre feedback après la session, et nous résoudrons rapidement le problème pour vous.
Importez les bibliothèques nécessaires
Tout d'abord, nous devons importer les bibliothèques requises. Nous allons utiliser Matplotlib et GridSpec.
import matplotlib.pyplot as plt
from matplotlib.gridspec import GridSpec
Créez une figure
Ensuite, nous devons créer une figure à l'aide de la fonction plt.figure(). Nous pouvons définir le paramètre layout sur "constrained" pour vous assurer que les sous-graphiques s'adaptent à la figure.
fig = plt.figure(layout="constrained")
Créez un GridSpec
Nous pouvons créer un objet GridSpec à l'aide de la fonction GridSpec(). Nous devons spécifier le nombre de lignes et de colonnes que nous voulons dans notre grille. Dans cet exemple, nous allons créer une grille 3x3.
gs = GridSpec(3, 3, figure=fig)
Ajoutez des sous-graphiques au GridSpec
Nous pouvons ajouter des sous-graphiques au GridSpec à l'aide de la fonction fig.add_subplot(). Nous pouvons spécifier l'emplacement du sous-graphique dans la grille en utilisant la notation d'indexation de l'objet GridSpec. Par exemple, gs[0, :] spécifie la première ligne et toutes les colonnes.
ax1 = fig.add_subplot(gs[0, :])
ax2 = fig.add_subplot(gs[1, :-1])
ax3 = fig.add_subplot(gs[1:, -1])
ax4 = fig.add_subplot(gs[-1, 0])
ax5 = fig.add_subplot(gs[-1, -2])
Personnalisez les sous-graphiques
Nous pouvons personnaliser les sous-graphiques selon les besoins. Par exemple, nous pouvons définir le titre de la figure à l'aide de la fonction fig.suptitle(), et nous pouvons formater les axes à l'aide de la fonction format_axes().
fig.suptitle("GridSpec")
def format_axes(fig):
for i, ax in enumerate(fig.axes):
ax.text(0.5, 0.5, "ax%d" % (i+1), va="center", ha="center")
ax.tick_params(labelbottom=False, labelleft=False)
format_axes(fig)
Affichez la figure
Enfin, nous pouvons afficher la figure à l'aide de la fonction plt.show().
plt.show()
Récapitulatif
Dans ce tutoriel, nous avons appris à utiliser GridSpec pour créer des dispositions de sous-graphiques à plusieurs colonnes/rangées dans Matplotlib. Nous avons créé une grille 3x3 et y avons ajouté des sous-graphiques. Nous avons personnalisé les sous-graphiques et affiché la figure. GridSpec est un outil puissant pour créer des dispositions complexes de sous-graphiques dans Matplotlib.