Python

Agregar etiquetas a los puntos en Matplotlib

En los gráficos de dispersión una manera de ayudar a los lectores a identificar valores especiales es incluir una etiqueta. Asignando un nombre a ese punto específico. La forma más sencilla para agregar etiquetas a los puntos en Matplotlib es mediante el uso de la función annotate(). Una función sencilla que solamente requiere la cadena de texto con el mensaje y la posición en la que se desea situar.

Agregar una etiqueta asociada a un punto en Matplotlib

El proceso para mostrar un mensaje asociado a un valor en una gráfica de dispersión creada con Matplotlib es sencillo. Tras la creación de una gráfica, pero antes de dibujarla o guardarla, se puede llamar a la función annotate() para insertar la anotación. Llamada que se puede realizar varias veces para agregar múltiples textos.

Este proceso se puede ver en el siguiente código. En el que, una vez importado Matplotlib, inicialmente se definen dos listas (x e y) con los valores que se desean dibujar. Tras lo cual se dibujan mediante la función scatter(). Una vez hecho esto se incluye un anotación mediante el uso de la función annotate(), a la que se la ha pasado como primer parámetro el texto y segundo una tupla con la posición en la que se desea dibujar el mensaje, en este caso el segundo punto de la lista. Finalmente, se agrega una etiqueta para el eje de abscisas y otra para el eje de coordenadas antes de dibujar la figura.

import matplotlib.pyplot as plt

x = [1, 2, 3, 4, 5]
y = [4, 3, 2, 5, 3]

plt.scatter(x, y, label="Valores")

plt.annotate("Punto 2", (2, 3))

plt.xlabel("X")
plt.ylabel("Valores")
plt.show()

Una vez ejecutado este código se obtiene la siguiente figura en la que se puede apreciar la anotación.

Gráfica de dispersión con una anotación cerca del segundo punto creada con Matplotlib

Posiblemente la etiqueta esté demasiado cerca del punto, pero esto se puede solucionar fácilmente separando ligeramente la posición en la que comienza a escribirse el texto.

Agregar múltiples etiquetas a los puntos en Matplotlib

Como se ha comentado anteriormente, es posible incluir en la gráfica tantas anotaciones como sea necesario. Esto es algo que se muestra en el siguiente código donde se emplea un bucle para agregar las anotaciones.

annotations=["Punto 1", "Punto 2", "Punto 3", "Punto 4", "Punto 5"]

plt.scatter(x, y, label="Valores")
plt.xlabel("X")
plt.ylabel("Valores")

for i, label in enumerate(annotations):
    plt.annotate(label, (x[i] + 0.1, y[i]))
    
plt.show()

Al ejecutar este programa se obtiene la siguiente figura

Gráfica de dispersión con múltiples anotaciones creada con Matplotlib

Aunque es necesario ser precavidos, demasiadas anotaciones pueden tener el efecto contrario ya que puede hacer más complicada la interpretación de la gráfica.

Conclusiones

La función annotate() de Matplotlib puede ser una gran aliada para hacer más fácil la interpretación de una gráfica. Al permitir asociar etiquetas a los puntos en Matplotlib. Reforzado de esta manera la información incluida en la gráfica.

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez
Tags: Matplotlib

Recent Posts

Interés compuesto: la fuerza que multiplica tu dinero (y los errores que la anulan)

“El interés compuesto es la octava maravilla del mundo. El que lo entiende lo gana…

3 días ago

Cómo comparar datos con barras en Matplotlib: agrupadas, apiladas y porcentuales

Tienes los datos de ventas de tres productos en dos años distintos y quieres saber…

5 días ago

Costes hundidos en ciencia de datos: cuándo mantener un modelo y cuándo migrar

Imagina la situación. Tu equipo lleva tres años con un modelo en producción. No es…

1 semana ago

WOE e IV: La Base Matemática del Credit Scoring

Cuando un banco evalúa una solicitud de crédito necesita responder a una pregunta aparentemente simple:…

2 semanas ago

Lanzamiento de la versión 1.0 del laboratorio de Analytics Lane con nuevas herramientas de scoring

En el octavo aniversario de Analytics Lane seguimos ampliando nuestro laboratorio de aplicaciones interactivas y,…

2 semanas ago

¡Analytics Lane cumple ocho años!

Hoy, 2 de mayo de 2026, Analytics Lane cumple exactamente ocho años. Todo empezó con…

2 semanas ago

This website uses cookies.