Introduction
La bibliothèque Python Matplotlib fournit un moyen flexible de créer et de personnaliser les légendes dans un graphique. Les légendes sont un composant essentiel de tout graphique, car elles fournissent une explication claire et concise des données représentées dans le graphique. Ce laboratoire vous guidera tout au long du processus de composition de légendes personnalisées à l'aide d'objets Matplotlib.
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 Carnet de notes pour accéder au carnet Jupyter pour pratiquer.
Parfois, vous devrez peut-être attendre quelques secondes pour que le carnet Jupyter ait fini de charger. La validation des opérations ne peut pas être automatisée en raison des limitations du carnet Jupyter.
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.
Tracer des lignes
Dans cette étape, nous allons tracer un ensemble de lignes à l'aide de la bibliothèque Matplotlib. Tout d'abord, nous créons des données aléatoires à l'aide de NumPy. Ensuite, nous définissons le cycle de couleurs à l'aide de la fonction cycler pour spécifier la carte de couleurs. Enfin, nous traçons les données à l'aide de la fonction plot et appelons legend() pour générer la légende.
import matplotlib.pyplot as plt
import numpy as np
## Fixer l'état aléatoire pour la reproductibilité
np.random.seed(19680801)
## Créer des données aléatoires
N = 10
data = (np.geomspace(1, 10, 100) + np.random.randn(N, 100)).T
## Définir le cycle de couleurs
cmap = plt.cm.coolwarm
plt.rcParams['axes.prop_cycle'] = cycler(color=cmap(np.linspace(0, 1, N)))
## Tracer les données et générer la légende
fig, ax = plt.subplots()
lines = ax.plot(data)
ax.legend()
Composer une légende personnalisée
Dans cette étape, nous allons créer une légende personnalisée à l'aide d'objets Matplotlib. Tout d'abord, nous importons la classe Line2D du module matplotlib.lines. Ensuite, nous créons une liste d'objets Line2D avec des attributs de couleur, de largeur et d'étiquette personnalisés. Enfin, nous traçons à nouveau les données à l'aide de la fonction plot et appelons legend() avec les lignes personnalisées et les étiquettes correspondantes.
## Import Line2D class
from matplotlib.lines import Line2D
## Create custom lines
custom_lines = [Line2D([0], [0], color=cmap(0.), lw=4),
Line2D([0], [0], color=cmap(.5), lw=4),
Line2D([0], [0], color=cmap(1.), lw=4)]
## Plot data and generate custom legend
fig, ax = plt.subplots()
lines = ax.plot(data)
ax.legend(custom_lines, ['Cold', 'Medium', 'Hot'])
Composer une légende personnalisée avec différents objets Matplotlib
Dans cette étape, nous allons créer une légende personnalisée à l'aide de différents objets Matplotlib, y compris Line2D et Patch. Tout d'abord, nous importons la classe Patch du module matplotlib.patches. Ensuite, nous créons une liste d'objets Line2D et Patch avec des attributs personnalisés. Enfin, nous appelons legend() avec les objets personnalisés et les étiquettes correspondantes.
## Import Line2D and Patch classes
from matplotlib.lines import Line2D
from matplotlib.patches import Patch
## Create legend elements
legend_elements = [Line2D([0], [0], color='b', lw=4, label='Ligne'),
Line2D([0], [0], marker='o', color='w', label='Nuage de points',
markerfacecolor='g', markersize=15),
Patch(facecolor='orange', edgecolor='r',
label='Patch de couleur')]
## Plot data and generate custom legend
fig, ax = plt.subplots()
ax.legend(handles=legend_elements, loc='center')
Sommaire
Dans ce laboratoire, nous avons appris à créer des légendes personnalisées à l'aide d'objets Matplotlib. Nous avons commencé par tracer un ensemble de lignes et en générer une légende par défaut. Ensuite, nous avons composé une légende personnalisée à l'aide d'objets Line2D avec des attributs personnalisés. Enfin, nous avons créé une légende personnalisée à l'aide de différents objets Matplotlib, y compris Line2D et Patch. En utilisant des légendes personnalisées, nous pouvons fournir une explication claire et concise des données représentées dans un graphique.