Menu
CoddyTech

Nuage de points à partir de colonnes

Fait partie de la section Données et visualisations du Journey Machine Learning de Coddy. Leçon 48 sur 60.

Une batterie plus grande signifie-t-elle une plus grande autonomie ? Un nuage de points à deux colonnes permet de le voir d’un coup d’œil, avec un point par ligne :

Nuage de points intitulé Autonomie des vélos électriques : sept vélos électriques représentés par des points, capacité de la batterie en Wh sur l’axe horizontal et autonomie en km sur l’axe vertical, les deux augmentant ensemble de 250 Wh et 35 km à 750 Wh et 110 km

Une colonne remplace une liste, donc ax.scatter prend deux colonnes :

bikes = pd.DataFrame({
    "battery_wh": [250, 300, 400, 500, 500, 625, 750],
    "range_km": [35, 45, 60, 65, 75, 95, 110],
})
fig, ax = plt.subplots()
ax.scatter(bikes["battery_wh"], bikes["range_km"])
ax.set_title("E-bike Range")
ax.set_xlabel("Battery (Wh)")
ax.set_ylabel("Range (km)")
plt.show()

Des points qui montent vers la droite signifient que les colonnes augmentent ensemble : une relation qu’un modèle peut apprendre. Un nuage informe signifie qu’il n’y en a aucune.

ax.scatter ne voit jamais les noms des colonnes, les étiquettes des axes sont donc à définir par toi.

challenge icon

Défi

Moyen

Un garde forestier a mesuré 12 arbres dans trees.csv : age_years, trunk_cm et height_m. Quelle variable est associée à la hauteur : l’âge ou la largeur du tronc ? Le code de départ lit l’un de ces deux noms dans column et prépare le graphique.

  1. Trace un point par arbre : cette colonne en abscisse, height_m en ordonnée.
  2. Étiquette l’axe x avec le nom de la colonne.

Ton graphique devrait ressembler à celui-ci, réalisé pour un autre parc avec crown_m :

Un nuage de points intitulé Tree Size, avec crown_m en abscisse et Height (m) en ordonnée : dix points qui montent de façon assez dispersée, d’arbres d’environ 6 m de haut avec de petites couronnes à des arbres de 14 m avec des couronnes de 7.5 m

Coddy exécute ton code pour les deux colonnes et décrit chaque graphique. Compare-les : la bande ascendante la plus resserrée répond à la question.

Essayez vous-même

import pandas as pd
import matplotlib.pyplot as plt

trees = pd.read_csv("trees.csv")
column = input()

fig, ax = plt.subplots()
ax.set_title("Tree Size")
ax.set_ylabel("Height (m)")

# Écrivez votre code ci-dessous

# Ne modifiez pas la ligne ci-dessous
plt.show()
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Données et visualisations

Entraînez-vous par vous-même : Compilateur Python en ligne