Nuage de points

Le nuage de points, ou scatter plot en anglais, est un graphique fondamental en data science pour explorer visuellement la relation entre deux variables numériques continues. Chaque point du graphique représente une observation du jeu de données, positionnée selon ses valeurs sur les deux axes.

Ce type de graphique permet de :

Structure d’un nuage de points

Les axes X et Y correspondent chacun à une variable. Chaque point (x, y) sur le graphique indique la valeur prise par une observation sur ces deux variables. Par exemple, pour étudier la relation entre le poids et la taille, chaque point représentera une personne avec ses deux mesures.

Fonctions :

  • px.scatter()

    px.scatter() est une fonction de la bibliothèque Plotly Express qui permet de créer des nuages de points interactifs à partir d’un DataFrame. Elle est très utilisée pour visualiser la relation entre deux variables numériques, avec la possibilité d’ajouter des dimensions supplémentaires comme la couleur, la taille ou le symbole.

    Importation :

    import pandas as pd
    import plotly.express as px

    Attributs :

    Paramètre Type Description Valeur par défaut
    data_frame DataFrame Tableau de données source. Obligatoire
    x str Nom de la colonne à afficher sur l’axe des x. Obligatoire
    y str Nom de la colonne à afficher sur l’axe des y. Obligatoire
    color str Colonne utilisée pour colorer les points selon les catégories ou valeurs numériques. None
    size str Colonne utilisée pour définir la taille des points. None
    hover_name str Colonne dont les valeurs apparaissent en survol du point. None
    title str Titre du graphique. None

    Exemple de code :

    import pandas as pd
    import plotly.express as px
    
    # Création d'un DataFrame
    data = {
        'Taille': [150, 160, 170, 180, 190],
        'Poids': [50, 60, 70, 80, 90],
        'Nom': ['Alice', 'Bob', 'Charlie', 'David', 'Eva']
    }
    
    df = pd.DataFrame(data)
    
    # Création du nuage de points
    fig = px.scatter(df, x='Taille', y='Poids', color='Nom', hover_name='Nom', title='Taille vs Poids')
    
    # Affichage
    fig.show()
    Résultat du code

    Explication du code :

    importe les bibliothèques pandas pour manipuler les données et plotly.express pour la visualisation.
    
    
    Création du DataFrame
    Le dictionnaire data contient trois colonnes : 'Taille', 'Poids' et 'Nom'. df = pd.DataFrame(data) transforme ce dictionnaire en tableau de données.
    Création du nuage de points
    px.scatter(...) génère un graphique interactif avec : - x='Taille' sur l’axe horizontal, - y='Poids' sur l’axe vertical, - color='Nom' pour donner une couleur par individu, - hover_name='Nom' pour afficher le nom lors du survol, - title='Taille vs Poids' pour ajouter un titre.
    Affichage
    fig.show() affiche le graphique dans une fenêtre interactive ou dans le notebook.