Maison >développement back-end >Tutoriel Python >Comment annoter des points de données de nuage de points avec un texte personnalisé dans Matplotlib ?

Comment annoter des points de données de nuage de points avec un texte personnalisé dans Matplotlib ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-15 03:55:09982parcourir

How to Annotate Scatter Plot Data Points with Custom Text in Matplotlib?

Annoter les points de données d'un nuage de points avec un texte personnalisé

Dans la visualisation de données, les nuages ​​de points sont couramment utilisés pour décrire la relation entre deux variables. Pour améliorer les informations tirées de ces tracés, l’annotation de points de données individuels avec des informations spécifiques peut s’avérer utile. Cependant, annoter chaque point avec un texte différent peut poser un défi.

import matplotlib.pyplot as plt

# Define sample data
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]

# Create the scatter plot
fig, ax = plt.subplots()
ax.scatter(x, y)

Les méthodes de traçage traditionnelles ne prennent pas en charge l'annotation de points avec un texte séparé à partir de listes. Par conséquent, une solution de contournement est nécessaire.

# Iterate over the annotation text and annotate each point
for i, txt in enumerate(n):
    ax.annotate(txt, (x[i], y[i]))

La fonction annotate() permet de personnaliser l'annotation, y compris sa position et le formatage du texte. En parcourant la liste des textes d'annotation, vous pouvez attribuer des valeurs spécifiques à chaque point de données.

# Customize the annotation format
ax.annotate(txt, (x[i], y[i]), xytext=(0, 0), textcoords='offset points',
            bbox=dict(boxstyle='round', fc='w'), arrowprops=dict(arrowstyle='->'))

En utilisant annotate() et en itérant sur le texte d'annotation, vous pouvez ajouter un texte personnalisé à des points de données individuels dans un nuage de points, fournissant des informations précieuses sur les données sous-jacentes.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn