unique parcelle marqueur pour chaque parcelle de terrain dans matplotlib
J'ai une boucle où je créer quelques parcelles et j'ai besoin de marqueur unique pour chaque parcelle. Je pense que sur la création de la fonction, qui renvoie symbole aléatoire, et l'utiliser dans mon programme de cette façon:
for i in xrange(len(y)):
plt.plot(x, y [i], randomMarker())
mais je pense que ce chemin n'est pas bon.
J'ai besoin de ce juste à distinguer des parcelles de la légende, parce que les parcelles doivent pas être reliés par des lignes, ils doivent être juste des ensembles de points.
- Faire réellement besoin chaque marqueur différent, ou voulez-vous simplement que vos points ne pas être reliés par une ligne?
- J'ai besoin de chaque marqueur différentes et voulez des points pour ne pas être reliés par des lignes.
Vous devez vous connecter pour publier un commentaire.
itertools.cycle
va itérer sur une liste ou un tuple indéfiniment. C'est préférable à une fonction qui sélectionne au hasard des marqueurs pour vous.Python 2.x
Python 3.x
Vous pouvez l'utiliser pour produire une intrigue qui ressemble à ceci (Python 2.x):
Vous pouvez également utiliser un marqueur génération par tuple par exemple, comme
Voir Matplotlib marqueurs doc site pour plus de détails.
En outre, cela peut être combinée avec itertools.cycle de boucle mentionné ci-dessus
(numsides, style, angle)
. Je voudrais corriger à:n = 16
etmarkers = [(2+i, 1+i%2, i/n*90.0) for i in range(1, n)]
.Viens de créer manuellement un tableau qui contient marqueur de personnages et d'utiliser, par exemple:
ax.plot(t,s, marker=['s', 'o'], ...)
, je reçoisTypeError: unhashable type: 'list'