Data Visualization

Dominando los Gráficos de Pastel con Matplotlib: Una Guía Completa

Spread the love

Este tutorial proporciona una guía completa para crear varios gráficos circulares utilizando Matplotlib, una potente biblioteca de visualización de datos de Python. Cubriremos conceptos fundamentales y profundizaremos en técnicas avanzadas, como personalizar la dirección del gráfico y resaltar sectores de datos específicos.

Tabla de contenido

Crear un gráfico circular básico

Comencemos construyendo un gráfico circular simple. Usaremos datos de muestra que representan la distribución de diferentes tipos de frutas en una cesta.


import matplotlib.pyplot as plt

# Datos de muestra
labels = 'Manzanas', 'Plátanos', 'Cerezas', 'Dátiles'
sizes = [15, 30, 45, 10]

# Crear el gráfico circular
plt.pie(sizes, labels=labels, autopct='%1.1f%%', startangle=140)

# Asegurar un gráfico circular
plt.axis('equal')

# Agregar un título
plt.title('Distribución de frutas')

# Mostrar el gráfico
plt.show()

Este fragmento de código primero importa el módulo matplotlib.pyplot. Luego define las etiquetas y los tamaños correspondientes para cada sector del gráfico. La función plt.pie() genera el gráfico, calculando y mostrando automáticamente los porcentajes (autopct), y comenzando el primer sector en un ángulo de 140 grados. plt.axis('equal') asegura que el gráfico sea un círculo perfecto. Finalmente, plt.title() agrega un título, y plt.show() muestra el resultado.

Crear un gráfico circular en el sentido de las agujas del reloj

Para crear un gráfico circular que progrese en el sentido de las agujas del reloj, simplemente modificamos el parámetro startangle dentro de la función plt.pie(). Un startangle de 0 grados colocará el primer sector en el punto más a la derecha, y los sectores siguientes seguirán en el sentido de las agujas del reloj.


import matplotlib.pyplot as plt

labels = 'Manzanas', 'Plátanos', 'Cerezas', 'Dátiles'
sizes = [15, 30, 45, 10]

plt.pie(sizes, labels=labels, autopct='%1.1f%%', startangle=0)
plt.axis('equal')
plt.title('Distribución de frutas (Sentido horario)')
plt.show()

Resaltar sectores con la función Explode

La función «explode» permite destacar sectores específicos separándolos ligeramente del resto del gráfico. Esto se hace proporcionando una lista al parámetro explode. La longitud de la lista debe coincidir con la lista sizes, y cada elemento representa la distancia de desplazamiento para el sector correspondiente. Un valor de 0 indica que no hay desplazamiento.


import matplotlib.pyplot as plt

labels = 'Manzanas', 'Plátanos', 'Cerezas', 'Dátiles'
sizes = [15, 30, 45, 10]
explode = (0, 0.1, 0, 0)  # Separar el segundo sector ('Plátanos')

plt.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%', startangle=90)
plt.axis('equal')
plt.title('Distribución de frutas (Sector separado)')
plt.show()

En este ejemplo, el segundo sector (‘Plátanos’) se separa estableciendo su valor de explosión en 0.1. Experimente con diferentes valores de explosión para lograr el énfasis visual deseado. Asegúrese de que la tupla explode se alinee con el número de sectores en su gráfico circular.

Personalizar la apariencia del gráfico circular

Matplotlib ofrece amplias opciones para personalizar sus gráficos circulares. Puede ajustar los colores, agregar leyendas, cambiar los tamaños de fuente y mucho más. Explore la documentación de Matplotlib para obtener una lista completa de opciones de personalización.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *