Aller au contenu
Moncoachdata
  • Accueil
  • Blog
  • Tutos
  • Programme Data
Connexion
Moncoachdata
Logo Numpy

Maîtriser NumPy : Le compagnon indispensable pour les Data Lovers

9
  • Principes de base des tableaux Numpy
  • Inspection de tableaux array de NumPy
  • Opérations sur les tableaux NumPy
  • Travailler avec des tableaux Numpy
  • NumPy pour le nettoyage de données
  • NumPy pour l’analyse statistique
  • NumPy pour l’algèbre linéaire
  • Techniques avancées pour NumPy
  • Optimisation des performances avec NumPy
Logo Pandas

Pandas : Un manuel complet pour les Data Lovers

10
  • Structures de données Pandas
  • Chargement et inspection des données dans Pandas
  • Sélection et indexation des données avec Pandas
  • Nettoyage de données avec Pandas
  • Manipulation de données avec Pandas
  • Agrégations de données avec Pandas
  • Visualisations de données avec Pandas
  • Traitement des données de séries temporelles avec Pandas
  • Traitement des données catégorielles avec Pandas
  • Pandas : Sujets avancés
Logo Matplotlib

Maîtriser Matplotlib : Un guide complet pour la visualisation de données

4
  • Tracé de base Matplotlib
  • Types de diagrammes Matplotlib
  • Multiples subplots Matplotlib
  • Matplotlib : Fonctionnalités avancées
Logo Seaborn

Maîtriser Seaborn : Démystifier les diagrammes complexes

6
  • Introduction Seaborn
  • Diagrammes catégoriels avec Seaborn
  • Diagrammes univariés avec Seaborn
  • Diagrammes bivariés avec Seaborn
  • Diagrammes multivariés avec Seaborn
  • Diagrammes matriciels avec Seaborn
Logo Plotly

Maîtriser Plotly : Laisse tes visualisations parler à travers Plotly

3
  • Modules importants de Plotly
  • Diagrammes de base avec Plotly
  • Plotly : diagrammes avancés
Logo Machine Learning

Machine Learning : Explorer ses nombreuses formes

5
  • Comment fonctionne le Machine Learning ?
  • Apprentissage automatique supervisé
  • Apprentissage Automatique non Supervisé
  • Apprentissage semi-supervisé
  • Apprentissage par renforcement
View Categories

Diagrammes univariés avec Seaborn

Temps de lecture: 5 minutes

0:00 / 5:32
  • View as Markdown Open this page as plain Markdown (opens in a new tab)
  • Export PDF Download this page as a PDF
  • Open in ChatGPT Ask questions about this page (opens in a new tab)
  • Open in Claude Ask questions about this page (opens in a new tab)
  • Open in Google AI Studio Ask questions about this page (Google account required) (opens in a new tab)
  • Open in Perplexity Ask questions about this page (opens in a new tab)
  • Open in Grok Ask questions about this page (opens in a new tab)

Les diagrammes univariés avec Seaborn servent à visualiser et analyser une seule variable à la fois. Ils permettent de comprendre sa distribution et sa tendance centrale, d’identifier les valeurs aberrantes et de repérer des schémas au sein de la variable. Les exemples utilisent le jeu de données tips :

import seaborn as sns
import matplotlib.pyplot as plt

tips = sns.load_dataset("tips")
Python

KDE Plot #

Un diagramme KDE (Kernel Density Estimation) estime la fonction de densité de probabilité d’une variable continue. La variable est sur l’axe x, et l’axe y représente la densité de probabilité estimée. L’aire totale sous la courbe vaut 1, ce qui signifie que la distribution est normalisée.

Utilise sns.kdeplot(data=dataframe[colonne]) pour créer un KDE plot. Tu peux le personnaliser avec des paramètres comme la largeur de bande (bw_adjust), le noyau ou la couleur.

plt.figure(figsize=(8, 5))
sns.kdeplot(data=tips["total_bill"], fill=True)
plt.title("Estimation de la densité du noyau de la facture totale")
plt.xlabel("Facture totale (en $)")
plt.ylabel("Densité")
plt.show()
Python
Diagramme KDE Seaborn de la facture totale du jeu de données tips

Un KDE plot donne un aperçu de la forme, des pics, des modes et de la dispersion des données. Il est précieux pour estimer la densité de probabilité des points, ce qui est utile en analyse statistique et pour les tests d’hypothèses.

Rug Plot #

Un rug plot est composé de lignes verticales (des « tics ») positionnées le long d’un axe, généralement l’axe x. Chaque tic marque l’emplacement d’un point de données, et leur proximité représente la densité : plus les tics sont serrés, plus la zone est dense.

Utilise sns.rugplot(x=dataframe[colonne]). Tu peux personnaliser la hauteur, la couleur et l’orientation des tics.

plt.figure(figsize=(8, 5))
sns.rugplot(x=tips["total_bill"], height=0.5)
plt.title("Rug plot de la facture totale")
plt.xlabel("Facture totale (en $)")
plt.show()
Python
Rug plot Seaborn de la facture totale du jeu de données tips

Le KDE plot montre un pic autour de 15 à 16 $. Le rug plot confirme que les factures se concentrent entre 10 et 20 $ environ, et montre la position exacte des points, y compris les rares factures élevées à droite. Il est souvent combiné avec un histogramme, un KDE plot ou un diagramme en boîte pour ajouter du contexte, et aide à repérer les valeurs aberrantes ou les zones denses.

Distribution plot (displot) #

Un diagramme de distribution ressemble à un histogramme : il divise la plage de la variable numérique en intervalles (bins) et affiche la fréquence des points de chaque intervalle. Dans Seaborn, la fonction à utiliser est sns.displot(). L’ancienne fonction distplot() est dépréciée et supprimée.

sns.displot(data=tips, x="total_bill")
plt.show()
Python
Diagramme de distribution Seaborn de la facture totale du jeu de données tips
  • Par défaut, displot() renvoie un histogramme. Ajoute kde=True pour superposer une courbe de densité, ou kind='kde' pour obtenir uniquement le KDE ;
  • Ajoute rug=True pour afficher un rug plot le long de l’axe x et voir les points de données individuels ;
  • Comme displot() est une fonction « figure-level » qui crée sa propre figure, n’appelle pas plt.figure() avant : utilise plutôt son paramètre height pour la taille, et g.set_axis_labels() ou g.set(...) pour les titres.
g = sns.displot(data=tips, x="total_bill", kde=True, rug=True, height=5, aspect=1.5)
g.set_axis_labels("Facture totale (en $)", "Fréquence")
g.figure.suptitle("Répartition de la facture totale", y=1.02)
plt.show()
Python

Box plot et Violin plot #

Ces deux diagrammes sont identiques à ceux de la section sur les diagrammes catégoriels. La seule différence : tu ne passes qu’une seule variable pour une analyse univariée.

plt.figure(figsize=(8, 5))
sns.boxplot(x=tips["total_bill"])
plt.title("Répartition de la facture totale")
plt.xlabel("Facture totale (en $)")
plt.show()
Python
Box plot Seaborn de la facture totale avec les valeurs aberrantes à droite

Strip Plot #

Un strip plot ressemble à un swarm plot : il affiche les points de données individuels le long d’un seul axe. Mais dans un strip plot, les points peuvent se chevaucher, alors que le swarm plot les écarte et convient donc mieux aux petits jeux de données.

Utilise sns.stripplot(x=dataframe[colonne]) (il fonctionne aussi pour des données bivariées). Le paramètre jitter ajoute un petit bruit aléatoire aux points pour limiter le chevauchement et améliorer la visibilité.

plt.figure(figsize=(8, 5))
sns.stripplot(x=tips["total_bill"], jitter=True)
plt.title("Répartition de la facture totale")
plt.xlabel("Facture totale (en $)")
plt.show()
Python
Strip plot Seaborn de la facture totale avec des points légèrement dispersés (jitter)

Conclusion #

Tu as vu dans cette série différents graphiques catégoriels et univariés : diagramme de comptage, swarm plot, point plot, cat plot, KDE plot, rug plot, box plot, distribution plot, violin plot et strip plot. Continue à explorer : Seaborn est un outil polyvalent, et tu peux faire beaucoup plus avec. Dans les prochains tutos, tu découvres les diagrammes bivariés, multivariés et matriciels.

Documentation : visualiser des distributions avec Seaborn.

Pour aller plus loin, consulte aussi notre article sur Seaborn pour la data science.

Maitriser Seaborn

Partager ce tuto :

  • Facebook
  • X
  • LinkedIn
Diagrammes catégoriels avec SeabornDiagrammes bivariés avec Seaborn
Table des matières
  • KDE Plot
  • Rug Plot
  • Distribution plot (displot)
  • Box plot et Violin plot
  • Strip Plot
  • Conclusion

Apprentissage

  • Cours accéléré NumPy
  • Nos programmes Data
  • TOP 50 fonctions NumPy
  • MasterClass DS & ML
  • MasterClass Deep Learning
  • Mon Shot de Data Science
  • Tutoriels Data Science

Le site

  • Articles
  • Communauté
  • Newsletter
  • Connexion

À propos

  • CGV
  • Contact
Payment Options
Reçois chaque semaine mes meilleures pratiques en Data Science :

© 2026 MonCoachData - Data Science & Machine Learning

YouTube Discord GitHub Linkedin RSS
Défiler vers le haut
  • Accueil
  • Blog
  • Tutos
  • Programme Data
Connexion
Discord DiscordYouTube YouTube
Rechercher