knn : ajout visualisation matplotlib exemple complet

This commit is contained in:
2026-06-02 09:24:07 +02:00
parent e5d26eaa8d
commit bf73a31828

View File

@@ -192,6 +192,33 @@ pokemon_mystere = [65, 40]
# Prédiction avec k=3 # Prédiction avec k=3
prediction = knn(pokemons, pokemon_mystere, k=3) prediction = knn(pokemons, pokemon_mystere, k=3)
print("Le Pokémon mystère est probablement de type :", prediction) print("Le Pokémon mystère est probablement de type :", prediction)
# Séparer par classe
classes = {}
for p in pokemons:
c = p['classe']
if c not in classes:
classes[c] = {'x': [], 'y': []}
classes[c]['x'].append(p['coords'][0])
classes[c]['y'].append(p['coords'][1])
# Afficher chaque classe avec une couleur différente
couleurs = {'Eau': 'blue', 'Psy': 'purple'}
for classe, coords in classes.items():
plt.scatter(coords['x'], coords['y'],
color=couleurs.get(classe, 'gray'),
label=classe, s=100)
# Afficher le pokémon mystère
plt.scatter(pokemon_mystere[0], pokemon_mystere[1],
color='red', marker='*', s=200, label=f'Mystère ({prediction})')
plt.title('Classification KNN — Pokémon')
plt.xlabel('Attaque')
plt.ylabel('Défense')
plt.legend()
plt.grid(True)
plt.show()
``` ```
-------- --------