55 votes

les petits marqueurs du diagramme de dispersion dans matplotlib sont toujours noirs

Je suis en train d'utiliser matplotlib pour faire un nuage de points avec de très petits points gris. En raison de la densité de points, les points doivent être de petite taille. Le problème est que le symbole() de la fonction de marqueurs semblent avoir à la fois une ligne et d'un remplissage. Lorsque les marqueurs sont de petite taille, seule la ligne est visible, ne pas le remplir, et la ligne n'est pas la bonne couleur (c'est toujours noir).

Je peux obtenir exactement ce que je veux à l'aide de gnuplot: complot 'noeuds', avec des points pt 0 lc rgb 'gris'

Comment puis-je faire de petits gris à l'aide de points de matplotlib nuage de points()?

71voto

Daan Points 1340
 scatter([1,2,3], [2,4,5], s=1, facecolor='0.5', lw = 0)
 

Cela définit la taille du marqueur sur 1 (s = 1), la couleur de la façade sur gris (couleur de la façade = '0.5') et la largeur de ligne sur 0 (lw = 0).

31voto

cyborg Points 5463

Si le marqueur n'a pas de face (ne peut pas être rempli, par exemple '+' , 'x' ), le edgecolor doit être défini à la place de c , et lw ne devraient pas être 0 :

 scatter([1,2,3], [2,4,5], marker='+', edgecolor='r')
 

Ce qui suit ne fonctionnera pas

 scatter([1,2,3], [2,4,5], s=1,  marker='+', facecolor='0.5', lw = 0)
 

parce que le bord / la ligne ne sera pas affiché, donc rien ne sera affiché.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X