Nuage de points avec annotations de texte de points de données individuels
Question :
Comment puis-je créer un nuage de points et annotez chaque point de données avec une valeur de texte spécifique à partir d'un liste ?
Exemple :
Étant donné les données suivantes :
y = [2.56422, 3.77284, 3.52623, 3.51468, 3.02199] x = [0.15, 0.3, 0.45, 0.6, 0.75] n = [58, 651, 393, 203, 123]
Puis-je générer un nuage de points de y vs x et annoter chaque point avec la valeur correspondante de n?
Réponse :
Comme il n'existe pas de méthode de traçage directe prenant en charge l'annotation de points de données avec le texte d'une liste, une approche alternative consiste à utiliser annotate() méthode :
import matplotlib.pyplot as plt x = [0.15, 0.3, 0.45, 0.6, 0.75] y = [2.56422, 3.77284, 3.52623, 3.51468, 3.02199] n = [58, 651, 393, 203, 123] fig, ax = plt.subplots() ax.scatter(x, y) for i, txt in enumerate(n): ax.annotate(txt, (x[i], y[i])) plt.show()
Ce code crée un nuage de points et parcourt les valeurs de texte dans la liste n, en annotant chaque point de données avec le correspondant valeur.
Options de formatage :
Matplotlib propose diverses options de formatage pour les annotations, notamment :
Pour plus d'informations sur les options de formatage, reportez-vous à Matplotlib documentation :
[https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.annotate.html](https://matplotlib.org/stable/api/_as_gen/matplotlib. axes.Axes.annotate.html)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!