J'essaie de créer une barre de couleur discrète pour un nuage de points en matplotlib.
J'ai mes données x, y et pour chaque point une valeur de balise entière que je veux voir représentée par une couleur unique, par ex.
plt.scatter(x, y, c=tag)
En général, la balise sera un nombre entier allant de 0 à 20, mais la plage exacte peut changer.
Jusqu'à présent, je n'ai utilisé que les paramètres par défaut, par ex.
plt.colorbar()
ce qui donne une gamme continue de couleurs. Idéalement, je voudrais un ensemble de n couleurs discrètes (n=20 dans cet exemple). Ce qui serait encore mieux, ce serait d'obtenir une valeur d'étiquette de 0 pour produire une couleur grise et de 1 à 20 pour les couleurs.
J'ai trouvé quelques 'cookbook' scripts mais ils sont très compliqués et je ne peux pas penser que ce soit la bonne façon de résoudre un problème apparemment simple