Un guide complet de Matplotlib: des bases aux parcelles avancées

 Un guide complet de Matplotlib: des bases aux parcelles avancées


Un guide complet de Matplotlib: des bases aux parcelles avancées
Image de l’éditeur | Chatte

La visualisation des données peut avoir l’impression d’essayer d’esquisser un chef-d’œuvre avec un crayon terne. Vous savez ce que vous voulez créer, mais l’outil dans votre main ne coopère tout simplement pas. Si vous avez déjà regardé un fouillis de code, voulant que votre graphique Matplotlib ressemble moins à une sortie désordonnée, vous n’êtes pas seul.

Je me souviens de ma première fois utilisé Matplotlib. J’avais besoin de tracer des données de température pour un projet, et après des heures de recherche sur Google «comment faire tourner les étiquettes de l’axe X», je me suis retrouvé avec un tableau qui semblait avoir survécu à une tornade. Cela semble familier? C’est pourquoi j’ai rassemblé ce guide – pour vous aider à sauter la frustration et à commencer à créer des parcelles professionnelles propres qui ont du sens.

Pourquoi matplotlib? (Et pourquoi ça se sent maladroit parfois)

Matplotlib est le grand-père des bibliothèques de tracé Python. C’est puissant, flexible et … disons, original. Les débutants posent souvent des questions comme:

  • «Pourquoi quelque chose d’aussi simple qu’un graphique à barres nécessite 10 lignes de code?»
  • «Comment puis-je empêcher mes parcelles de ressembler à leur 1995?»
  • «Y a-t-il un moyen de rendre cela moins douloureux?»

La réponse courte à ces derniers? Oui.

Matplotlib a une courbe d’apprentissage, mais une fois que vous avez compris sa logique, vous débloquerez une personnalisation sans fin. Pensez-y comme apprendre à conduire un changement de bâton: maladroit au début, mais bientôt vous changerez de vitesses sans réfléchir.

Partage: votre premier parcelle en 5 minutes

Avant de plonger dans des astuces avancées, clouons les bases. Installer Matplotlib avec pip install matplotlibpuis essayez ceci.

Première chose à faire: importer Matplotlib de la manière conventionnelle.

import matplotlib.pyplot as plt

Créons quelques exemples de données:

years = (2010, 2015, 2020)
sales = (100, 250, 400)

Maintenant, créons une figure et un axe:

Il est temps de tracer les données:

ax.plot(years, sales, marker="o", linestyle="--", color="green")

Ajoutez maintenant des étiquettes et un titre:

ax.set_xlabel('Year')
ax.set_ylabel('Sales (in thousands)')
ax.set_title('Company Growth: 2010-2020')

Enfin, nous devons afficher l’intrigue:

Que se passe-t-il ici?

  • plt.subplots() Crée une figure (la toile) et un axe (la zone de tracé)
  • ax.plot() dessine un graphique de ligne. Le marqueur, la linéestyle et les arguments de couleur le jazz it up
  • Des étiquettes et des titres sont ajoutés avec set_xlabel(), set_ylabel()et set_title()

Conseil pro: Étiquetez toujours vos axes! Une intrigue non marquée entraîne une confusion et semble non professionnelle.

L’anatomie d’un tracé de matplotlib

Pour maîtriser Matplotlib, vous devez parler sa langue. Voici une ventilation des composants clés:

  • Figure: La fenêtre ou la page entière. C’est la vue d’ensemble.
  • Axes: où le traçage se produit. Un chiffre peut avoir plusieurs axes (pensez aux sous-intrigues).
  • Axe: les dirigeants x et y qui définissent les limites de données.
  • Artiste: Tout ce que vous voyez, du texte, aux lignes, aux marqueurs.

Confus Figures vs axes? Imaginez la figure comme un cadre photo et les axes comme la photo à l’intérieur.

Étapes suivantes

Ok, il est temps de faire de votre plost … moins moche. Le style par défaut de Matplotlib crie «Document académique de 2003». Modernitons-le. Voici quelques stratégies.

1. Utilisez des feuilles de style

Les feuilles de style sont des palettes préconfigurées pour apporter une coloration cohésive à votre travail:

Autres options que vous pouvez utiliser pour les configurations de couleur de feuille de style comprend seaborn, fivethirtyeight, dark_background.

2. Personnaliser les couleurs et les polices

Ne vous contentez pas des couleurs ou des polices par défaut, ajoutez une certaine personnalisation. Cela ne prend pas grand-chose à le faire:

ax.plot(years, sales, color="#2ecc71", linewidth=2.5)
ax.set_xlabel('Year', fontsize=12, fontfamily='Arial')

3. Ajouter des grilles (mais avec parcimonie)

Vous ne voulez pas que les grilles deviennent écrasantes, mais les ajouter lorsqu’ils sont justifiés peuvent apporter un certain flair et une certaine utilité à votre travail:

ax.grid(True, linestyle="--", alpha=0.6) 

4. Annoter les points clés

Existe-t-il un point de données qui nécessite une explication supplémentaire? Annoter le cas échéant:

ax.annotate('Record Sales in 2020!', xy=(2020, 400), xytext=(2018, 350),
    arrowprops=dict(facecolor="black", shrink=0.05))

Nivellement vers le haut: techniques avancées

1. Pré-sous-intrigues: multitâche pour les parcelles

Si vous devez afficher plusieurs graphiques côte à côte, utilisez des sous-intrigues pour créer 2 lignes et 1 colonne.

fig, axes = plt.subplots(nrows=2, ncols=1, figsize=(8, 6)) axes(0).plot(years, sales, color="blue")  
axes(1).scatter(years, sales, color="red")  
plt.tight_layout()

La dernière ligne empêche le chevauchement.

2. MAUX TIR et CONTOURS

Visualisez les données 3D en 2D:

import numpy as np

x = np.linspace(-5, 5, 100)
y = np.linspace(-5, 5, 100)
X, Y = np.meshgrid(x, y)
Z = np.sin(np.sqrt(X**2 + Y**2))

contour = ax.contourf(X, Y, Z, cmap='viridis')

Si vous souhaitez ajouter une échelle de couleurs:

3. Tracés interactifs

Il est temps de rendre vos graphiques cliquables avec mplcursors:

import mplcursors

line, = ax.plot(years, sales)
mplcursors.cursor(line).connect("add", lambda sel: sel.annotation.set_text(f"Sales: ${sel.target(1)}k"))

Emballage

Avant de sortir d’ici, examinons rapidement les maux de tête Matplotlib communs et leurs correctifs:

  • «Mes étiquettes sont coupées!» – Utiliser plt.tight_layout() ou ajuster le rembourrage avec la Fig.Subplots_adjust (gauche = 0,1, en bas = 0,15)
  • « Pourquoi mon complot est-il vide ?! » – Oublié plt.show() Utiliser Jupyter? Ajouter %matplotlib en ligne au sommet
  • « Les polices ont l’air pixélées » – Enregistrer les formats vectoriels (PDF, SVG) avec plt.savefig('plot.pdf', dpi=300)

Si vous êtes prêt à expérimenter par vous-même, voici quelques défis que vous devriez maintenant pouvoir relever. Si vous êtes coincé, partagez votre code dans les commentaires et dépannons ensemble.

  • Personnalisez un histogramme pour correspondre aux couleurs de la marque de votre entreprise
  • Recréer un tableau d’un récent article de presse du mieux que vous pouvez
  • Animer un tracé montrant les changements de données au fil du temps (indice: essayez FuncAnimation)

Enfin, Matplotlib évolue, tout comme vos connaissances. Bouclez ces ressources pour vérifier au fur et à mesure que vous progressez:

Conclusion

Matplotlib n’est pas seulement une bibliothèque – c’est une boîte à outils pour la narration. Que vous visualisiez les données climatiques ou que vous tracez les tendances des ventes, l’objectif est la clarté. N’oubliez pas que même les experts Google « comment ajouter un deuxième axe Y » parfois. La clé est de commencer simple, d’itérer souvent et de ne pas craindre la documentation.

Shittu olumide est un ingénieur logiciel et un écrivain technique passionné de tirer parti des technologies de pointe pour créer des récits convaincants, avec un œil attentif pour les détails et un talent pour simplifier les concepts complexes. Vous pouvez également trouver Shittu sur Gazouillement.





Source link

Related post