Introduction
Ce tutoriel vous guidera tout au long du processus de création d'un graphique de référence en forme de flèche à l'aide de Matplotlib en Python. Le graphique affichera les différents styles de flèches disponibles dans ~.Axes.annotate.
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 à 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églerons rapidement le problème pour vous.
Importez les bibliothèques nécessaires
Importez les bibliothèques nécessaires pour créer le graphique de référence en forme de flèche.
import inspect
import itertools
import re
import matplotlib.pyplot as plt
import matplotlib.patches as mpatches
Obtenez les styles de flèche
Utilisez mpatches.ArrowStyle.get_styles() pour obtenir tous les styles de flèche disponibles dans ~.Axes.annotate.
styles = mpatches.ArrowStyle.get_styles()
Configurez la figure
Configurez la figure à l'aide de plt.figure() et add_gridspec(). La figure aura une grille de 2 colonnes et n lignes, où n est le nombre de styles de flèche. Chaque cellule de la grille contiendra un style de flèche et ses paramètres par défaut.
ncol = 2
nrow = (len(styles) + 1) // ncol
axs = (plt.figure(figsize=(4 * ncol, 1 + nrow))
.add_gridspec(1 + nrow, ncol,
wspace=.7, left=.1, right=.9, bottom=0, top=1).subplots())
for ax in axs.flat:
ax.set_axis_off()
for ax in axs[0, :]:
ax.text(0,.5, "arrowstyle",
transform=ax.transAxes, size="large", color="tab:blue",
horizontalalignment="center", verticalalignment="center")
ax.text(.35,.5, "paramètres par défaut",
transform=ax.transAxes,
horizontalalignment="gauche", verticalalignment="center")
Tracez les styles de flèche
Tracez chaque style de flèche dans une cellule de la grille, ainsi que ses paramètres par défaut. Utilisez ax.annotate() pour ajouter le nom du style de flèche et ses paramètres par défaut à la cellule.
for ax, (stylename, stylecls) in zip(axs[1:, :].T.flat, styles.items()):
l, = ax.plot(.25,.5, "ok", transform=ax.transAxes)
ax.annotate(stylename, (.25,.5), (-0.1,.5),
xycoords="axes fraction", textcoords="axes fraction",
size="large", color="tab:blue",
horizontalalignment="center", verticalalignment="center",
arrowprops=dict(
arrowstyle=stylename, connectionstyle="arc3,rad=-0.05",
color="k", shrinkA=5, shrinkB=5, patchB=l,
),
bbox=dict(boxstyle="square", fc="w"))
## wrap at every nth comma (n = 1 or 2, depending on text length)
s = str(inspect.signature(stylecls))[1:-1]
n = 2 if s.count(',') > 3 else 1
ax.text(.35,.5,
re.sub(', ', lambda m, c=itertools.count(1): m.group()
if next(c) % n else '\n', s),
transform=ax.transAxes,
horizontalalignment="gauche", verticalalignment="center")
Affichez le graphique
Affichez le graphique de référence des styles de flèche à l'aide de plt.show().
plt.show()
Résumé
Dans ce tutoriel, vous avez appris à créer un graphique de référence des styles de flèche à l'aide de Matplotlib en Python. Vous avez utilisé mpatches.ArrowStyle.get_styles() pour obtenir tous les styles de flèche disponibles dans ~.Axes.annotate, configuré une figure à l'aide de plt.figure() et add_gridspec(), tracé chaque style de flèche dans une cellule de la grille et affiché le graphique à l'aide de plt.show().