Visualiser des données avec Matplotlib et Seaborn
Un tableau de nombres cache souvent une structure qu’un graphique révèle instantanément. Deux bibliothèques suffisent pour l’essentiel des besoins de ce cours.
Matplotlib : la brique de base
Section titled “Matplotlib : la brique de base”Matplotlib est la bibliothèque de visualisation historique de Python — verbeuse, mais universelle : toute autre bibliothèque de graphiques en Python (dont Seaborn) s’appuie dessus ou l’imite.
import matplotlib.pyplot as pltimport numpy as np
jours = np.arange(1, 8)ventes = np.array([120, 95, 140, 110, 205, 155, 215])
fig, ax = plt.subplots()ax.plot(jours, ventes, marker="o")ax.set_xlabel("Jour")ax.set_ylabel("Ventes (€)")ax.set_title("Ventes de la semaine")plt.savefig("ventes_semaine.png")Le motif fig, ax = plt.subplots() revient dans presque tout ce cours : fig représente la figure entière (utile pour l’enregistrer ou gérer plusieurs sous-graphiques), ax représente les axes sur lesquels on dessine réellement.
Seaborn : des graphiques statistiques prêts à l’emploi
Section titled “Seaborn : des graphiques statistiques prêts à l’emploi”Seaborn ajoute un vocabulaire de plus haut niveau, pensé pour l’exploration statistique, avec un style visuel plus soigné par défaut.
import seaborn as snsimport pandas as pd
np.random.seed(0)notes = np.random.normal(loc=13, scale=2.5, size=200)df_notes = pd.DataFrame({"note": notes})
fig, ax = plt.subplots()sns.histplot(df_notes["note"], bins=20, kde=True, ax=ax)ax.set_title("Distribution des notes")plt.savefig("distribution_notes.png")
print("moyenne:", round(notes.mean(), 2), "ecart-type:", round(notes.std(), 2))moyenne: 13.18 ecart-type: 2.55histplot(..., kde=True) superpose à l’histogramme une estimation lissée de la densité (Kernel Density Estimate) — utile pour juger d’un coup d’œil si une distribution ressemble à une gaussienne, une question qui reviendra dès le module 1 (métriques d’évaluation) et au module 8 (résidus d’un modèle de série temporelle).
Quel outil pour quel besoin ?
Section titled “Quel outil pour quel besoin ?”| Besoin | Outil |
|---|---|
| Un graphique simple et contrôlé précisément (ligne, barres, nuage de points) | Matplotlib |
| Explorer rapidement une distribution, une corrélation, un groupe | Seaborn |
Un graphique directement à partir d’un DataFrame (df.plot(...)) |
pandas (qui délègue à Matplotlib en coulisse) |
Ce dernier cas (DataFrame.plot()) a déjà été utilisé au module 2, pour restituer une requête SQL sous forme de graphique en une seule ligne.
Prochaine étape
Section titled “Prochaine étape”👉 Le vocabulaire commun de scikit-learn
Junior TSAFACK – 12/09/2026