Publicado el 12/08/2024

Matplotlib: Qué es y Cómo funciona (Guía Definitiva 2024)

Índice de Contenidos

En un mundo dominado por los datos, la capacidad de visualizarlos de manera efectiva se ha convertido en una habilidad imprescindible. ¿Alguna vez te has preguntado cómo los científicos de datos y analistas convierten interminables filas de números en gráficos impactantes y fáciles de entender? La respuesta, en muchos casos, es Matplotlib, una poderosa biblioteca de visualización de datos en Python. 

Con esta plataforma, los números cobran vida, permitiendo transformar datos crudos en narrativas visuales que pueden impulsar decisiones, contar historias y revelar patrones ocultos. Matplotlib no es solo una herramienta; ¡Es una puerta de entrada al vasto mundo de la visualización de datos! ¡Acompáñanos a develar todos sus misterios!

imagen del blog

¿Qué es Matplotlib y para qué sirve?

¿Te llamó la atención la introducción del artículo? ¡No es para menos! Al leer “Matplotlib” todos desean conocer más sobre el tema porque resulta sumamente interesante y útil. Básicamente, presentamos una biblioteca de visualización de datos en Python con los que es posible crear una amplia variedad de gráficos estáticos, animados e interactivos. 

John D. Hunter desarrolló este instrumento en 2002 con el objetivo de ofrecer una opción perfecta para científicos de datos, analistas y cualquier persona que necesite representar datos visualmente. Con el paso de los años, el sistema se ha consolidado y ha ganado gran popularidad gracias a sus fortalezas, donde destaca la versatilidad de sus opciones de personalización. 

Por otra parte, Matplotlib se integra perfectamente con otras bibliotecas del ecosistema científico de Python, como NumPy, Pandas y SciPy, facilitando el análisis y la visualización de grandes conjuntos de datos. La biblioteca también es accesible para principiantes gracias a su documentación exhaustiva y la gran cantidad de tutoriales y recursos disponibles en línea. 

A su vez, los usuarios más avanzados pueden aprovechar sus características sofisticadas para crear visualizaciones más complejas. Matplotlib puede generar gráficos en diversos formatos, incluyendo PNG, PDF y SVG, y se incrusta en aplicaciones web y de escritorio, lo que la convierte en una herramienta extremadamente flexible y potente para cualquier proyecto de visualización de datos.

¿Cómo funciona Matplotlib?

Sabes qué es y para qué sirve Matplotlib es lo principal, y ahora que está claro, queremos profundizar en el funcionamiento de esta biblioteca tan versátil. A continuación, te presentaremos seis aspectos clave con los que entenderás cómo configurar, crear y personalizar gráficos con esta ayuda:

Instalación y configuración

Esto se puede hacer fácilmente usando pip con el comando `pip install matplotlib`. Una vez instalada, es necesario importarla en tu script de Python con `import matplotlib.pyplot as plt`. Esta configuración inicial es esencial para acceder a todas las funcionalidades que Matplotlib ofrece y preparar el entorno de trabajo para la creación de gráficos.

Creación de un gráfico básico

La creación de un gráfico básico con Matplotlib es sencilla y directa. Por ejemplo, para generar un gráfico de líneas, puedes usar el método `plt.plot()`. Proporcionas los datos a graficar, y luego llamas a `plt.show()` para mostrar el gráfico en pantalla. Este proceso básico se puede aplicar a diversos tipos de gráficos, como de barras, dispersión y pastel, permitiendo visualizar rápidamente datos de manera efectiva.

Personalización de gráficos

Matplotlib ofrece una amplia gama de opciones para personalizar gráficos. Puedes modificar colores, estilos de línea, marcadores y etiquetas para adaptarlos a tus necesidades. Por ejemplo, es sencillo cambiar el color de una línea usando el parámetro `color`, o ajustar el estilo de una línea con el parámetro `linestyle`. La personalización ayuda a mejorar la claridad y el impacto visual de tus gráficos.

Anotaciones y etiquetas

Añadir anotaciones y etiquetas a tus gráficos es esencial para proporcionar contexto y facilitar la interpretación de los datos. Agrega títulos a tus gráficos con `plt.title()`, etiquetar los ejes con `plt.xlabel()` y `plt.ylabel()`, y añade anotaciones específicas a puntos de interés con `plt.annotate()`. Estas herramientas comunican información adicional y destacan puntos clave en tus gráficos.

Manejo de Subplots

La función `plt.subplot()` especifica la disposición de los gráficos dentro de la figura, facilitando la comparación de diferentes conjuntos de datos en un solo lienzo. Es útil cuando se trabaja con datos complejos que requieren múltiples visualizaciones para ser comprendidos completamente.

Guardado de Gráficos

Una vez que has creado y personalizado tu gráfico, es importante poder guardarlo en un formato de archivo para su posterior uso. Matplotlib guarda gráficos en diversos formatos como PNG, PDF y SVG utilizando el método `plt.savefig()`. 

Esto facilita la inclusión de gráficos en informes, presentaciones y documentos, asegurando que tus visualizaciones estén disponibles para futuras referencias o compartición con otros.

Plots y subplots en Matplotlib 

Con Matplotlib es fácil crear gráficos simples y complejos, más conocidos como plots y subplots. ¿Sabes de qué hablamos? Síguenos que aquí te explicaremos su funcionamiento:

Creación de Plots

Un plot es un gráfico simple que representa una relación entre dos o más variables. Para crear un plot básico en Matplotlib, utiliza la función `plt.plot()`. Por ejemplo:
```python
import matplotlib.pyplot as plt
x = [1, 2, 3, 4]
y = [10, 20, 25, 30]
plt.plot(x, y)
plt.title('Gráfico de Línea Simple')
plt.xlabel('Eje X')
plt.ylabel('Eje Y')
plt.show()
```

Este código crea un gráfico de líneas que muestra la relación entre los valores de `x` e `y`, con etiquetas y un título para mayor claridad.

Personalización de Plots

Como lo mencionamos en un principio, Matplotlib ofrece una amplia variedad de opciones para personalizar tus gráficos. Puedes ajustar el color, el estilo de las líneas y los marcadores, entre otros. Por ejemplo, para cambiar el color y el estilo de la línea, puedes modificar el código así:
```python
plt.plot(x, y, color='red', linestyle='--', marker='o')
```

Esta línea de código produce un gráfico con una línea roja discontinua y marcadores circulares en cada punto de datos.

Introducción a Subplots

Los subplots admiten la inclusión de múltiples gráficos en una sola figura, facilitando la comparación de diferentes conjuntos de datos. Para crear subplots, utiliza la función `plt.subplot()`. Por ejemplo:
```python
fig, (ax1, ax2) = plt.subplots(1, 2)
ax1.plot(x, y, color='blue')
ax1.set_title('Subplot 1')
ax2.plot(y, x, color='green')
ax2.set_title('Subplot 2')
plt.show()
```

Este código genera una figura con dos subplots colocados horizontalmente.

Disposición de Subplots

La disposición de subplots se controla con parámetros adicionales en `plt.subplots()`. Puedes especificar el número de filas y columnas, así como ajustar el espacio entre los subplots. Por ejemplo:
```python
fig, axs = plt.subplots(2, 2, figsize=(10, 10))
```

Este comando crea una figura con una cuadrícula de 2x2 subplots, cada uno con un tamaño ajustado a 10x10 pulgadas.

Personalización de Subplots

Cada subplot se personaliza de manera independiente, similar a los plots individuales. Puedes ajustar títulos, etiquetas y estilos para cada subplot según sea necesario:
```python
axs[0, 0].plot(x, y, color='purple')
axs[0, 0].set_title('Subplot Superior Izquierdo')
axs[1, 1].plot(y, x, color='orange')
axs[1, 1].set_title('Subplot Inferior Derecho')
```

Guardado de Figuras con Subplots

Finalmente, una vez que has creado y personalizado tus subplots, puedes guardar toda la figura en un archivo usando `plt.savefig()`:
```python
plt.savefig('subplots.png')
```

El comando guarda la figura completa con todos los subplots en un archivo PNG. Aunado a ello, la funcionalidad es crucial para la documentación y presentación de tus análisis.

¿Cómo tener Matplotlib en Python? 

Para tener Matplotlib en Python y comenzar a utilizarlo, sigue estos pasos:
Instalación
La forma más común de instalar Matplotlib es usando el gestor de paquetes `pip`. Abre una terminal o una línea de comandos y ejecuta:
   ```bash
   pip install matplotlib
   ```

Para asegurarte de que Matplotlib se ha instalado correctamente, puedes intentar importar la biblioteca en una sesión interactiva de Python o en un script. Abre una terminal y ejecuta:
   ```python
   python
   ```

Luego, en el intérprete de Python, escribe:
  ```python
   import matplotlib.pyplot as plt
   ```

Si no aparece ningún error, Matplotlib está correctamente instalado.

Configuración Básica

En tu script o notebook de Python, importa Matplotlib con:
   ```python
   import matplotlib.pyplot as plt
   ```

Si trabajas en un entorno Jupyter Notebook, es útil habilitar el modo de visualización en línea para ver gráficos directamente en el notebook. Puedes hacer esto con:
   ```python
   %matplotlib inline
   ```

Este comando asegura que los gráficos se muestren dentro de las celdas del notebook, facilitando la exploración interactiva de datos.

Creación de un gráfico simple

Una vez instalada y configurada la biblioteca, puedes comenzar a crear gráficos. Aquí tienes un ejemplo básico:
```python
import matplotlib.pyplot as plt
# Datos
x = [1, 2, 3, 4]
y = [10, 20, 25, 30]
# Crear un gráfico
plt.plot(x, y)
# Añadir título y etiquetas
plt.title('Mi Primer Gráfico')
plt.xlabel('Eje X')
plt.ylabel('Eje Y')
# Mostrar el gráfico
plt.show()
```

Actualización y compatibilidad

Para mantenerte al día con las últimas características y correcciones de errores, es una buena práctica actualizar Matplotlib periódicamente. Puedes hacerlo con:
   ```bash
   pip install --upgrade matplotlib
   ```

Ejemplos de Matplotlib en Python

En este punto encontrarás algunos ejemplos prácticos de cómo usar Matplotlib en Python para crear diferentes tipos de gráficos. Cada ejemplo incluye el código necesario para generar el gráfico.

Gráfico de Líneas

Un gráfico de líneas muestra la relación entre dos variables numéricas. Es ideal para visualizar tendencias a lo largo del tiempo o secuencias de datos.
```python
import matplotlib.pyplot as plt
# Datos
x = [1, 2, 3, 4, 5]
y = [2, 3, 5, 7, 11]
# Crear gráfico de líneas
plt.plot(x, y, marker='o', linestyle='-', color='b')
# Personalizar el gráfico
plt.title('Gráfico de Líneas')
plt.xlabel('Eje X')
plt.ylabel('Eje Y')
# Mostrar gráfico
plt.show()
```

Gráfico de Barras

Un gráfico de barras es útil para comparar categorías discretas. Muestra la magnitud de cada categoría con barras de diferente altura.
```python
import matplotlib.pyplot as plt
# Datos
categorias = ['A', 'B', 'C', 'D']
valores = [4, 7, 1, 8]
# Crear gráfico de barras
plt.bar(categorias, valores, color='green')
# Personalizar el gráfico
plt.title('Gráfico de Barras')
plt.xlabel('Categorías')
plt.ylabel('Valores')
# Mostrar gráfico
plt.show()
```

Gráfico de Dispersión

Un gráfico de dispersión muestra la relación entre dos variables numéricas como puntos en un plano cartesiano.
```python
import matplotlib.pyplot as plt
# Datos
x = [1, 2, 3, 4, 5]
y = [2, 5, 1, 8, 7]
# Crear gráfico de dispersión
plt.scatter(x, y, color='red', marker='x')
# Personalizar el gráfico
plt.title('Gráfico de Dispersión')
plt.xlabel('Eje X')
plt.ylabel('Eje Y')
# Mostrar gráfico
plt.show()
```

Histograma

Un histograma muestra la distribución de un conjunto de datos dividiéndolos en intervalos (bins) y contando cuántos datos caen en cada intervalo.
```python
import matplotlib.pyplot as plt
# Datos
datos = [1, 2, 2, 3, 4, 4, 4, 5, 6, 6, 7, 8, 9, 10]
# Crear histograma
plt.hist(datos, bins=5, color='purple', edgecolor='black')
# Personalizar el gráfico
plt.title('Histograma')
plt.xlabel('Intervalos')
plt.ylabel('Frecuencia')
# Mostrar gráfico
plt.show()
```

Gráfico de Pastel

Un gráfico de pastel muestra la proporción de cada categoría en relación con el total, ideal para ver la composición de un conjunto de datos.
```python
import matplotlib.pyplot as plt
# Datos
categorias = ['A', 'B', 'C', 'D']
valores = [15, 30, 45, 10]
# Crear gráfico de pastel
plt.pie(valores, labels=categorias, autopct='%1.1f%%', colors=['blue', 'orange', 'green', 'red'])
# Personalizar el gráfico
plt.title('Gráfico de Pastel')
# Mostrar gráfico
plt.show()
```

Subplots

Los subplots permiten incluir varios gráficos en una sola figura, facilitando la comparación entre diferentes conjuntos de datos.
```python
import matplotlib.pyplot as plt

# Datos
x = [1, 2, 3, 4]
y1 = [10, 20, 25, 30]
y2 = [5, 15, 20, 25]
# Crear figura y subplots
fig, axs = plt.subplots(2, 1, figsize=(8, 6))
# Primer subplot
axs[0].plot(x, y1, color='blue', marker='o')
axs[0].set_title('Gráfico de Líneas 1')
axs[0].set_xlabel('Eje X')
axs[0].set_ylabel('Eje Y')
# Segundo subplot
axs[1].bar(x, y2, color='green')
axs[1].set_title('Gráfico de Barras')
axs[1].set_xlabel('Eje X')
axs[1].set_ylabel('Eje Y')
# Ajustar el layout
plt.tight_layout()
# Mostrar figura
plt.show()
```

¿Cómo puedes especializarte en Matplotlib?

Aprende a utilizar esta librería de Python en nuestro Máster en Inteligencia Artificial Online  EBIS te ofrece profesionales en el área para que tengas acceso permanente a sus conocimientos y una variedad de recursos educativos. Inscríbete ahora, adapta el programa de estudios a tus necesidades y lleva tus habilidades al siguiente nivel, avalado por instituciones de renombre. ¡El momento para formar tu futuro es ahora! 

Conclusión

Una vez comprendido todo el mundo de Matplotlib, queda dominar sus herramientas porque así no solo adquieres la capacidad de transformar números crudos en imágenes reveladoras, sino que también te embarcas en una aventura de creatividad analítica. 

Desde gráficos de líneas que cuentan historias hasta subplots que organizan complejidades, Matplotlib te permite dibujar el mapa de tu comprensión de datos con precisión artística. Al incorporar esta guía a tu arsenal, te posicionas para explorar y presentar datos de manera más efectiva, asegurando que tus descubrimientos sean tan impactantes como informativos. ¡Así que no esperes más para probar esta herramienta!

Suscríbase a nuestra Newsletter
banner fundacion estatal

Centro inscrito en el Registro Estatal de Entidades de Formación en virtud de la ley 30/2015

EBIS EDUCATION SL, B67370601© 2024 EBIS Business Techschool, C. Agustín Millares, 18, 35001 Las Palmas de Gran Canaria