Pourquoi visualiser ses données ?
Avant même de construire un modèle ou de tirer des conclusions, il est souvent utile d'explorer visuellement les données. C’est ce qu’on appelle l’analyse exploratoire. Elle permet par exemple de :
- détecter des tendances ou des anomalies,
- comparer des groupes,
- identifier des corrélations entre variables,
- valider des hypothèses initiales.
Les graphiques Python facilitent cette étape : une bonne visualisation peut parfois révéler en quelques secondes ce que des lignes de code ne montrent pas clairement.
Matplotlib et Seaborn : deux outils complémentaires
Matplotlib : le socle de la visualisation Python
Matplotlib est la bibliothèque de référence pour créer des visualisations personnalisées en Python. Elle est flexible et très utilisée, bien qu’un peu verbeuse pour les débutants.
Elle permet de créer tout type de graphique : courbes (line plot), histogrammes, barres, nuages de points, etc. Son avantage : un contrôle très fin sur chaque élément du graphique (axes, couleurs, annotations…).
Seaborn : une surcouche plus lisible
Seaborn s’appuie sur Matplotlib mais simplifie la syntaxe et propose des styles graphiques plus modernes. Elle est idéale pour les data viz débutants, notamment lorsqu’il s’agit de représenter des données issues de DataFrames Pandas.
Seaborn gère automatiquement les axes, les légendes et intègre nativement des fonctions statistiques comme la régression linéaire.
Cas pratique : visualiser un jeu de données simple
Prenons un petit jeu de données simulé avec des ventes mensuelles :
data = {
'mois': ['Jan', 'Fév', 'Mar', 'Avr', 'Mai'],
'ventes': [250, 300, 280, 310, 330]
}
df = pd.DataFrame(data)
1. Line plot (courbe d’évolution)
Pour suivre l’évolution d’une valeur dans le temps :
import matplotlib.pyplot as plt
plt.plot(df['mois'], df['ventes'])
plt.title("Évolution des ventes")
plt.xlabel("Mois")
plt.ylabel("Ventes")
plt.show()
Ce line plot permet d'observer une tendance globale à la hausse.
2. Bar plot (diagramme en barres)
Pour comparer des valeurs entre catégories :
import seaborn as sns
sns.barplot(x='mois', y='ventes', data=df)
plt.title("Ventes mensuelles")
plt.show()
Avec Seaborn, le bar plot est plus rapide à écrire et s’adapte automatiquement aux types de données.
3. Histogramme (répartition des données)
Utile pour observer la distribution d’une variable numérique :
ventes = [250, 300, 280, 310, 330, 300, 310, 280, 290, 300]
plt.hist(ventes, bins=5)
plt.title("Distribution des ventes")
plt.xlabel("Ventes")
plt.ylabel("Fréquence")
plt.show()
L’histogramme donne une idée de la concentration autour de certaines valeurs.
4. Scatter plot (nuage de points)
Pour observer une relation entre deux variables continues :
revenu_pub = [1000, 1500, 1200, 1600, 1700]
df['revenu_publicitaire'] = revenu_pub
sns.scatterplot(x='ventes', y='revenu_publicitaire', data=df)
plt.title("Ventes vs Revenus publicitaires")
plt.show()
Le scatter plot est utile pour déceler des corrélations visuelles, ici entre ventes et revenus.
Quand utiliser Matplotlib ou Seaborn ?
Besoin | Bibliothèque recommandée |
---|---|
Contrôle fin sur chaque élément | Matplotlib |
Graphiques rapides et lisibles | Seaborn |
Analyse exploratoire statistique | Seaborn |
Construction graphique avancée (multi-axes, subplots) | Matplotlib |
En pratique, les deux bibliothèques sont complémentaires. Vous pouvez commencer par Seaborn pour la rapidité, puis affiner avec Matplotlib si nécessaire.
Se former à la visualisation avec Python
La visualisation de données n’est pas seulement un outil graphique : c’est un levier pour comprendre et valoriser ses analyses. Apprendre à choisir le bon graphique, à l’interpréter et à le rendre lisible est une compétence précieuse pour tout analyste de données.
Si vous débutez ou souhaitez structurer vos compétences, la formation Data Analyst de la Wild Code School vous forme à toutes les étapes de l’analyse de données, y compris la data visualisation avec Python, Pandas, Matplotlib et Seaborn.