Matplotlib
Tutorial Matplotlib: Subplots y grillas
Aprende a organizar y personalizar gráficos en Matplotlib usando subplots y grillas. Mejora la claridad y comparabilidad de tus visualizaciones.
Aprende Matplotlib GRATIS y certifícate¿Qué son los subplots y grillas en Matplotlib?
En Matplotlib, los subplots son una característica que permite dividir una figura en una cuadrícula de subgráficos, proporcionando una forma estructurada de visualizar múltiples gráficos en un solo espacio. Esta capacidad es vital cuando se necesita comparar diferentes conjuntos de datos o mostrar varias visualizaciones de datos relacionados en un mismo contexto.
Utilizar subplots permite una mejor organización visual y facilita el análisis comparativo de la información.
La creación de subplots se realiza comúnmente mediante el método plt.subplots()
, que devuelve una figura y un conjunto de ejes. Estos ejes son los contenedores donde se dibujan los gráficos individuales. A través de este método, se especifica el número de filas y columnas que conforman la cuadrícula de subgráficos.
Por ejemplo, para crear una figura con dos filas y dos columnas de subgráficos, se usaría el siguiente código:
import matplotlib.pyplot as plt
fig, axs = plt.subplots(2, 2)
El resultado visual sería el siguiente:
En este ejemplo, axs
es una matriz de ejes que puede ser indexada para acceder a cada subplot individualmente. Esto permite personalizar cada gráfico con diferentes estilos, títulos y datos.
Las grillas en Matplotlib son una herramienta que mejora la legibilidad de los gráficos al proporcionar líneas de referencia horizontales y verticales en el fondo de los subgráficos.
Activar las grillas es un proceso sencillo y se realiza a nivel de cada eje utilizando el método ax.grid(True)
.
Las grillas pueden ser personalizadas en términos de color, estilo de línea y ancho, lo que proporciona flexibilidad para adaptarse a diferentes necesidades de visualización.
El uso combinado de subplots y grillas permite no solo una mejor organización de la información visual, sino también una mayor claridad en la interpretación de los datos. Esta combinación es especialmente útil en análisis de datos complejos donde la comparación entre diferentes gráficos es esencial.
A continuación, un ejemplo de cómo activar las grillas en cada subplot de una figura:
for ax in axs.flat:
ax.grid(True)
Este enfoque es eficiente y asegura que cada subplot en la cuadrícula tenga sus propias grillas, mejorando la cohesión visual de la figura completa. La capacidad de ajustar cada subplot independientemente es una de las características que hace que Matplotlib sea una herramienta flexible y potente para la visualización de datos.
Creación de subplots
La creación de subplots en Matplotlib es esencial para organizar múltiples visualizaciones en una sola figura. El método plt.subplots()
es el enfoque más común y flexible para generar subgráficos. Este método permite especificar la cantidad de filas y columnas que conforman la cuadrícula de subplots, devolviendo un objeto Figure
y un arreglo o matriz de objetos Axes
. Cada objeto Axes
representa un subplot individual que puede ser personalizado de manera independiente.
Por ejemplo, para crear una figura con una disposición de 2x3 subplots, se utilizaría el siguiente código:
import matplotlib.pyplot as plt
fig, axs = plt.subplots(2, 3)
La visualización resultante es la siguiente:
En este ejemplo, axs
es una matriz de ejes que puede ser indexada para modificar cada subplot. La personalización de cada subplot se realiza accediendo a sus métodos de dibujo, como plot()
, scatter()
, o bar()
, entre otros. Es importante recordar que cada subplot puede tener su propio conjunto de datos, títulos y configuraciones de estilo.
Además, Matplotlib ofrece la posibilidad de ajustar el espacio entre subplots usando el método plt.subplots_adjust()
, que permite modificar parámetros como wspace
y hspace
para controlar el espacio horizontal y vertical, respectivamente. Esto es crucial para evitar que los subplots se superpongan o queden demasiado separados, manteniendo una presentación visual coherente.
plt.subplots_adjust(wspace=0.4, hspace=0.6)
Otra funcionalidad avanzada es el uso de GridSpec
, que proporciona un control más detallado sobre la disposición de subplots. GridSpec
permite definir subplots que se extienden sobre múltiples filas o columnas, ofreciendo gran flexibilidad para configuraciones complejas:
import matplotlib.gridspec as gridspec
gs = gridspec.GridSpec(3, 3)
ax1 = plt.subplot(gs[0, :])
ax2 = plt.subplot(gs[1, :-1])
ax3 = plt.subplot(gs[1:, -1])
ax4 = plt.subplot(gs[-1, 0])
ax5 = plt.subplot(gs[-1, -2])
Resultado:
En este ejemplo, ax1
ocupa toda la primera fila, ax2
ocupa las dos primeras columnas de la segunda fila, y así sucesivamente. Este nivel de personalización es útil para visualizaciones avanzadas donde la disposición de gráficos debe adaptarse a necesidades específicas de análisis.
El uso de subplots en Matplotlib no solo mejora la organización visual, sino que también facilita la comparación y análisis de datos relacionados. La capacidad de personalizar cada subplot individualmente y ajustar su disposición dentro de la figura global es fundamental para crear visualizaciones efectivas y comprensibles.
Cuándo utilizar subplots
Los subplots son una herramienta esencial cuando se necesita representar múltiples visualizaciones en una sola figura de manera ordenada y comprensible.
A continuación, algunos puntos clave sobre cuándo y por qué utilizarlos:
Comparación de datos:
- Son útiles cuando se desea comparar diferentes conjuntos de datos o mostrar varias perspectivas de un mismo conjunto de datos.
- Ejemplo típico: en análisis de series temporales, se pueden mostrar diferentes métricas o variables a lo largo del tiempo para facilitar la comparación directa.
Organización de la información:
- Permiten organizar la información de manera que cada gráfico individual se interprete en el contexto de los otros gráficos presentes en la figura.
- Ideal para datos complejos que requieren una visualización multidimensional.
Creación de informes y presentaciones:
- Los subplots son útiles cuando se necesita mostrar una serie de gráficos relacionados de manera compacta y profesional.
- Ayudan a mantener un aspecto limpio y organizado en reportes y presentaciones.
Cantidad de gráficos y su relación:
- Es importante considerar cuántos gráficos se van a incluir y cómo se relacionan entre sí.
- Se puede ajustar el espacio entre los gráficos mediante los parámetros
wspace
yhspace
para evitar solapamientos y mejorar la claridad.
Uso de GridSpec
para mayor control:
- Si se requiere un control más detallado sobre la disposición de los subplots,
GridSpec
es ventajoso. - Permite que algunos gráficos se extiendan sobre múltiples filas o columnas, ofreciendo mayor flexibilidad.
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
fig = plt.figure(constrained_layout=True)
gs = gridspec.GridSpec(2, 2, figure=fig)
ax1 = fig.add_subplot(gs[0, 0])
ax2 = fig.add_subplot(gs[0, 1])
ax3 = fig.add_subplot(gs[1, :])
ax1.plot([1, 2, 3], [4, 5, 6])
ax2.plot([1, 2, 3], [6, 5, 4])
ax3.plot([1, 2, 3], [5, 5, 5])
plt.show()
La visualización resultante es la siguiente:
En este ejemplo, GridSpec
se utiliza para crear una disposición de subplots donde el último gráfico abarca toda la segunda fila, demostrando la flexibilidad que ofrece esta herramienta. En resumen, los subplots son ideales para visualizaciones complejas que requieren una organización clara y coherente, permitiendo a los ingenieros de software y analistas de datos presentar sus hallazgos de manera efectiva y comprensible.
Ejercicios de esta lección Subplots y grillas
Evalúa tus conocimientos de esta lección Subplots y grillas con nuestros retos de programación de tipo Test, Puzzle, Código y Proyecto con VSCode, guiados por IA.
Evaluación código global
Integración de Matplotlib con Numpy
Evaluación test global
Análisis mercado de criptomonedas
Gráficos univariantes
Gráficos multivariantes
Conceptos básicos de Matplotlib
Análisis de ventas de videojuegos
Temas predefinidos, colores y estilos
Subplots y grillas
Gráficos bivariantes
Integración de Matplotlib con Pandas
Visualización de datos dataset iris
Introducción e instalación de Matplotlib
Ajuste de ejes en matplotlib
Integración de Matplotlib con Seaborn
Títulos, etiquetas y leyenda y límites
Todas las lecciones de Matplotlib
Accede a todas las lecciones de Matplotlib y aprende con ejemplos prácticos de código y ejercicios de programación con IDE web sin instalar nada.
Introducción E Instalación De Matplotlib
Introducción Y Entorno
Conceptos Básicos De Matplotlib
Introducción Y Entorno
Gráficos Univariantes
Creación De Gráficos
Gráficos Bivariantes
Creación De Gráficos
Gráficos Multivariantes
Creación De Gráficos
Títulos, Etiquetas Y Leyenda Y Límites
Personalización De Gráficos
Temas Predefinidos, Colores Y Estilos
Personalización De Gráficos
Ejes, Ajustes De Ejes
Personalización De Gráficos
Subplots Y Grillas
Personalización De Gráficos
Integración De Matplotlib Con Numpy
Integraciones
Integración De Matplotlib Con Pandas
Integraciones
Integración De Matplotlib Con Seaborn
Integraciones
Evaluación Test De Conocimientos
Evaluación Matplotlib
Evaluación Conocimiento De Código
Evaluación Matplotlib
Certificados de superación de Matplotlib
Supera todos los ejercicios de programación del curso de Matplotlib y obtén certificados de superación para mejorar tu currículum y tu empleabilidad.
En esta lección
Objetivos de aprendizaje de esta lección
1. Comprender la estructura y propósito de los subplots en Matplotlib.
2. Aprender a crear y personalizar subplots utilizando plt.subplots()
.
3. Entender cuándo es apropiado utilizar subplots para mejorar la visualización de datos.
4. Implementar grillas en subplots para mejorar la legibilidad y comparación de datos.
5. Desarrollar habilidades para ajustar y personalizar subplots y grillas de acuerdo a necesidades específicas de visualización.