Matplotlib – visualisation de données

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Guide complet de la bibliothèque Matplotlib : des bases aux techniques avancées

Matplotlib est une puissante bibliothèque Python pour créer des visualisations de données statiques, animées et interactives. Développée par John Hunter en 2003, elle est devenue le socle de la plupart des autres bibliothèques de visualisation en Python et reste la référence pour produire des graphiques de haute qualité.

Qu'est-ce que Matplotlib et pourquoi l'utiliser ?

Matplotlib est une bibliothèque complète pour créer des graphiques en deux et trois dimensions, quelle que soit leur complexité. Elle offre une interface de programmation similaire à MATLAB, ce qui la rend familière aux utilisateurs de cet environnement mathématique populaire.

Principaux avantages de Matplotlib :

  • Polyvalence : prend en charge plus de 20 types de graphiques différents
  • Facilité d'apprentissage : API intuitive pour un démarrage rapide
  • Flexibilité de personnalisation : contrôle total sur chaque élément de la visualisation
  • Intégration avec NumPy et Pandas : compatibilité parfaite avec les bibliothèques de données essentielles
  • Multiples formats d'exportation : PNG, SVG, PDF, EPS, PGF et autres
  • Multiplateforme : fonctionne sur Windows, macOS et Linux
  • Communauté active : mises à jour régulières et documentation complète

Installation et configuration initiale

L'installation de Matplotlib se fait de manière standard via pip :

pip install matplotlib

Pour une utilisation dans Jupyter Notebook, il est également recommandé d'installer :

pip install matplotlib jupyter

Importation standard de la bibliothèque :

import matplotlib.pyplot as plt
import numpy as np  # souvent utilisé avec matplotlib

L'utilisation de l'alias plt est une pratique courante dans la communauté Python.

Architecture et composants principaux

Matplotlib repose sur une architecture à trois niveaux :

  1. Backend layer (moteur de rendu) : responsable du dessin des graphiques
  2. Artist layer (couche artistique) : gère les objets graphiques
  3. Scripting layer (couche de script) : pyplot - l'interface de haut niveau

Éléments essentiels d'un graphique :

  • Figure (figure) : conteneur de plus haut niveau pour tous les éléments
  • Axes (axes) : zone de tracé du graphique
  • Axis (axe) : lignes de coordonnées (X, Y, Z)
  • Artist (artiste) : tous les éléments visuels

Création du premier graphique

import matplotlib.pyplot as plt

# Données simples
x = [1, 2, 3, 4, 5]
y = [2, 4, 1, 5, 3]

# Création du graphique
plt.plot(x, y)
plt.title("Mon premier graphique")
plt.xlabel("Axe X")
plt.ylabel("Axe Y")
plt.grid(True)
plt.show()

Types de graphiques et leurs utilisations

Graphiques linéaires (Line Plot)

Idéaux pour afficher les tendances et les évolutions dans le temps :

# Création des données
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)

plt.plot(x, y1, label='sin(x)', color='blue', linewidth=2)
plt.plot(x, y2, label='cos(x)', color='red', linestyle='--')
plt.legend()
plt.title('Fonctions trigonométriques')
plt.show()

Diagrammes de dispersion (Scatter Plot)

Montrent les relations entre les variables :

# Génération de données aléatoires
np.random.seed(42)
x = np.random.randn(100)
y = 2 * x + np.random.randn(100)

plt.scatter(x, y, alpha=0.6, c='purple')
plt.xlabel('Variable X')
plt.ylabel('Variable Y')
plt.title('Corrélation entre X et Y')
plt.show()
                    

Recommendations