Menu
CoddyTech

Nuages de points

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

Dix plantes d’intérieur : heures d’ensoleillement par jour et croissance de chacune. Reliées par une ligne, elles forment un enchevêtrement. Sous forme de points, un motif apparaît :

Deux graphiques des mêmes dix plantes, avec l’ensoleillement en abscisse et la croissance en ordonnée. À gauche, plt.plot les relie en un enchevêtrement en zigzag. À droite, plt.scatter montre des points qui montent vers la droite

plt.scatter(x, y) dessine un point par paire, sans lignes :

sun = [2, 6, 3, 8, 5, 1, 7, 4, 6, 3]
growth = [4, 10, 7, 12, 6, 2, 9, 8, 7, 3]
plt.scatter(sun, growth)
plt.xlabel("Sun (hours a day)")
plt.ylabel("Growth (cm)")
plt.show()

Plus de soleil, plus de croissance. Un nuage de points montre la relation entre deux mesures d’échantillons distincts : un premier aperçu avant qu’un modèle ne prédise l’une à partir de l’autre.

Les valeurs ordonnées, comme les jours de la semaine, utilisent toujours plt.plot.

challenge icon

Défi

Moyen

Un pêcheur a noté chaque poisson dans l’ordre de capture : une ligne par poisson, la longueur (cm), puis le poids (g). Le code de départ les relie avec plt.plot, ce qui fait zigzaguer la ligne et masque la tendance.

  1. Représente chaque poisson par son propre point : la longueur sur l’axe horizontal, le poids sur l’axe vertical.
  2. Ne trace aucune ligne.
  3. Conserve le titre, les étiquettes et plt.show().

Le résultat devrait ressembler à celui-ci, issu d’une autre sortie de pêche :

Un nuage de points intitulé Fish Catch : neuf points qui montent de 18 cm et 90 g à 42 cm et 980 g, sans ligne

Ton programme n’affiche rien. Coddy décrit ton graphique dans le résultat.

Essayez vous-même

import numpy as np
import matplotlib.pyplot as plt

# Chaque ligne correspond à un poisson, dans l’ordre où il a été pêché : longueur (cm), poids (g)
fish = np.array([[22, 180], [30, 390], [25, 250], [35, 620],
                 [28, 330], [40, 870], [19, 120], [33, 510]])

# Corrige le graphique ci-dessous
plt.plot(fish[:, 0], fish[:, 1])

# Ne modifie pas les lignes ci-dessous
plt.title("Fish Catch")
plt.xlabel("Length (cm)")
plt.ylabel("Weight (g)")
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