Question

Dans une réponse à une question précédente de la mine en ce qui concerne la fixation des images de l'espace colorimétrique de diffusion de données 4D, Tom10 suggéré tracer des valeurs comme symboles pour revérifier mes données. Une excellente idée. J'ai couru des démos similaires dans le passé, mais je ne peux pas pour la vie de me trouver la démo Je me souviens être assez simple.

Alors, quelle est la meilleure façon de tracer des valeurs numériques comme le symbole dans un diagramme de dispersion au lieu de « o » par exemple? Tom10 suggéré plt.txt (x, y, valeur) - et qui est la mise en œuvre utilisée dans un certain nombre d'exemples. Je me demande s'il y a un moyen facile d'évaluer la « valeur » de mon tableau de nombres? Peut-on dire simplement: str (de tabValeursMsg)

Avez-vous besoin d'une boucle pour évaluer les valeurs pour le tracé comme suggéré dans la section matplotlib démo pour diagrammes de dispersion texte 3D ?

Leur exemple produit:


(source: sourceforge.net )

Cependant, ils font quelque chose d'assez complexe dans l'évaluation de l'emplacement ainsi que la direction de changement de texte basé sur des données. Alors, est-il un moyen mignon à tracer x, y, les données C (où C est une valeur souvent considérée comme la couleur dans le Data- de terrain mais je voudrais faire le symbole)?

Encore une fois, je pense que nous avons une réponse juste this- Je me demande s'il y a un moyen plus facile?

Était-ce utile?

La solution

La meilleure façon que je l'ai vu le faire est:

for x, y, val in zip(x_array, y_array, val_array):
    plt.text(x, y, val)

De plus, d'ailleurs, vous a suggéré d'utiliser str (valarray), et, comme vous avez pu le constater ne fonctionne pas. Pour convertir un tableau de nombres à une séquence de chaînes que vous pouvez utiliser

valarray.astype(str)

pour obtenir un tableau de numpy, ou,

[str(v) for v in valarray]

pour obtenir une liste Python. Mais même avec valarray comme une bonne séquence de chaînes, plt.text ne sera pas itérer sur les entrées de it.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top