Diagrammes de densité

Fonctions :

  • sns.kdeplot()

    La fonction sns.kdeplot() de Seaborn permet de tracer une courbe d'estimation de densité de noyau (KDE) à partir d'un jeu de données. Cela permet de visualiser la distribution continue d'une variable en lissant l'histogramme en une courbe. C'est souvent utilisé pour mieux comprendre la distribution des données, notamment pour détecter des pics ou des zones de forte densité. Elle est utile dans l'analyse exploratoire des données (EDA) pour évaluer les caractéristiques des variables continues telles que la symétrie, les pics et la dispersion.

    Importation :

    import seaborn as sns

    Attributs :

    Nom Type Description
    data array-like, Series, DataFrame Les données à tracer sous forme de vecteur ou de DataFrame. Il peut s'agir d'un tableau NumPy, d'une série pandas ou d'un DataFrame.
    shade bool, optionnel Si `True`, le graphique sera rempli avec une couleur semi-transparente sous la courbe. Par défaut, c'est `False`.
    shade_lowest bool, optionnel Si `True`, la couleur de l'ombre du noyau sera appliquée aux valeurs les plus faibles. Par défaut, c'est `True`.
    cmap str, optionnel Le colormap à utiliser pour colorer la courbe. Par exemple : `'Blues'`, `'coolwarm'`.
    bw str, float, optionnel Largeur de la bande passante (bandwidth). Plus la bande passante est grande, plus la courbe sera lissée.
    kernel str, optionnel Type de noyau à utiliser pour l'estimation de densité. Les options incluent `'gau'` (gaussien), `'tophat'`, `'epanech'`, etc. Par défaut, c'est `'gau'`.
    fill bool, optionnel Si `True`, remplit sous la courbe avec une couleur. Par défaut, c'est `True` si `shade` est `True`.
    x array-like, optionnel Valeurs de l'axe des abscisses (x), à utiliser si `data` contient plusieurs colonnes et que l'on souhaite tracer la densité d'une seule colonne.

    Exemple de code :

    import seaborn as sns
    import matplotlib.pyplot as plt
    import numpy as np
    
    # Création de données d'exemple (distributions aléatoires)
    data = np.random.normal(loc=0, scale=1, size=1000)
    
    # Création de l'estimation de densité de noyau (KDE)
    sns.kdeplot(data, shade=True, color='blue', bw=0.5)
    
    # Ajouter un titre
    plt.title('Estimation de Densité de Noyau (KDE)')
    
    # Afficher le graphique
    plt.show()
    Résultat du code

    Explication du code :

    data est un tableau NumPy généré avec des valeurs suivant une distribution normale de moyenne 0 et d'écart-type 1. Cette distribution est utilisée ici pour l'exemple.

    sns.kdeplot(data) trace la courbe KDE pour les données.

    shade=True remplit la zone sous la courbe avec une couleur semi-transparente.

    color='blue' définit la couleur de la courbe.

    bw=0.5 ajuste la largeur de la bande passante. Une valeur plus petite rendra la courbe plus réactive aux variations des données, tandis qu'une valeur plus grande la rendra plus lisse.

    plt.title() ajoute un titre au graphique.

    plt.show() affiche le graphique.