ConsigneCrée un nuage de points pour visualiser la corrélation
Un scatter plot affiche des points (x, y) sans les relier. Idéal pour visualiser la corrélation ou la distribution conjointe de deux variables.
Syntaxe
plt.scatter(x, y)plt.scatter(x, y, c='red', couleur unique c=valeurs_numeriques, colorier selon une 3e variable cmap='viridis', palette de couleurs s=20, taille des points s=valeurs, taille selon une variable alpha=0.7, transparence (utile si beaucoup de points) marker='o' forme)import numpy as npnp.random.seed(42)heures = np.random.uniform(1, 10, 50)notes = 5 + 1.5 * heures + np.random.normal(0, 2, 50) # relation linéaire bruitéeplt.figure(figsize=(8, 5))plt.scatter(heures, notes, alpha=0.7, c='#E8006F')plt.xlabel('Heures d\'étude')plt.ylabel('Note')plt.title('Corrélation heures/notes')plt.savefig('/tmp/scatter.png')plt.scatter(x, y, c=age, s=salaire/1000, alpha=0.5, cmap='coolwarm')plt.colorbar(label='âge')Chaque point a une position (x,y), une couleur (3e variable) et une taille (4e variable).
coef = np.polyfit(x, y, 1) # régression linéaireplt.plot(x, coef[0]*x + coef[1], 'r--')Trop de points (>10 000) saturent l'image — utilise alpha bas (0.1) ou un hexbin (plt.hexbin) qui affiche une densité.
Envie d'aller plus loin ? Découvrez nos formations certifiées Bac+2 à Bac+5 →