Ajuster l'alignement des étiquettes d'échelle de Matplotlib

Beginner

This tutorial is from open-source community. Access the source code

Introduction

Dans la visualisation de données, les étiquettes d'échelle jouent un rôle important dans la transmission d'informations aux téléspectateurs. Parfois, nous pouvons avoir besoin d'ajuster l'alignement des étiquettes d'échelle pour les rendre plus lisibles ou pour éviter les chevauchements. Dans ce laboratoire, nous allons apprendre à utiliser Matplotlib pour ajuster l'alignement des étiquettes d'échelle.

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 la pratique.

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.

Import Matplotlib et AxisArtist

Tout d'abord, nous devons importer Matplotlib et AxisArtist, qui fournit des outils supplémentaires pour créer des axes personnalisés.

import matplotlib.pyplot as plt
import mpl_toolkits.axisartist as axisartist

Définir une fonction pour configurer les axes

Pour simplifier le code, nous pouvons définir une fonction qui prend un objet figure et une position en entrée, et renvoie un objet axe avec des étiquettes d'échelle personnalisées.

def setup_axes(fig, pos):
    ax = fig.add_subplot(pos, axes_class=axisartist.Axes)
    ax.set_yticks([0.2, 0.8], labels=["court", "trèssss long"])
    ax.set_xticks([0.2, 0.8], labels=[r"$\frac{1}{2}\pi$", r"$\pi$"])
    return ax

Créer une figure et ajouter des sous-graphiques

Ensuite, nous pouvons créer un objet figure et ajouter trois sous-graphiques en utilisant la fonction setup_axes.

fig = plt.figure(figsize=(3, 5))
fig.subplots_adjust(left=0.5, hspace=0.7)

ax = setup_axes(fig, 311)
ax.set_ylabel("ha=droite")
ax.set_xlabel("va=ligne de base")

ax = setup_axes(fig, 312)
ax.axis["left"].major_ticklabels.set_ha("center")
ax.axis["bottom"].major_ticklabels.set_va("top")
ax.set_ylabel("ha=center")
ax.set_xlabel("va=haut")

ax = setup_axes(fig, 313)
ax.axis["left"].major_ticklabels.set_ha("gauche")
ax.axis["bottom"].major_ticklabels.set_va("bas")
ax.set_ylabel("ha=gauche")
ax.set_xlabel("va=bas")

Ajuster l'alignement des étiquettes d'échelle

Enfin, nous pouvons utiliser les méthodes set_ha et set_va pour ajuster l'alignement horizontal et vertical des étiquettes d'échelle.

ax.axis["left"].major_ticklabels.set_ha("center")
ax.axis["bottom"].major_ticklabels.set_va("top")

Afficher le tracé

Pour afficher le tracé, nous pouvons utiliser la méthode show.

plt.show()

Sommaire

Dans ce laboratoire, nous avons appris à utiliser Matplotlib et AxisArtist pour ajuster l'alignement des étiquettes d'échelle. En personnalisant l'alignement horizontal et vertical des étiquettes d'échelle, nous pouvons améliorer la lisibilité et la clarté de nos visualisations de données.