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 :
- Identifier des tendances linéaires ou non linéaires entre deux variables,
- Détecter des clusters ou regroupements,
- Mettre en évidence des outliers ou points atypiques,
- Observer la force et la direction de la relation entre variables.
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()
Explication du code :
importe les bibliothèques pandas pour manipuler les données et plotly.express pour la visualisation.
Création du DataFrame
Le dictionnairedata
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.