Mapas de calor y diagramas de araña en Python

En una entrada anterior se ha visto algunos de los gráficos más importantes disponibles en la librería de Python Seaborn. En esta ocasión se va a ver cómo construir en Python dos tipos de gráficos que pueden ser muy útiles: los mapas de calor y los diagramas de araña. Para construir el primero de ellos se utilizará Seaborn, mientras que para el segundo se utilizará matplotlib. Saber construir mapas de calor y diagramas de araña en Python es de gran ayuda a la hora de mostrar los resultados obtenidos en nuestros análisis.

Mapas de calor con Seaborn

Un mapa de calor es una representación gráfica de los valores contenidos en una matriz mediante el uso de colores. En estos, los índices de la matriz representan las variables de dos características que se desean comparar. Mientras que el color utilizado en cada elemento de la matriz representa la magnitud de la relación existente. Siendo una herramienta excelente para para mostrar las relaciones existentes entre las variables de diferentes características, ya que al mostrar la relación mediante un color se obtiene una interpretación fácil e intuitiva de esta. No solo esto, sino que al mismo tiempo se puede ver comparar las relaciones de unas características con otras observando otros puntos del mapa de calor.

Un ejemplo para crear un mapa de calor con datos aleatorios se puede ver en el siguiente trozo de código.

# Importación de las librerías
import seaborn as sns
import pandas as pd
import numpy as np

# Creación de un conjunto de datos aleatorio
data = pd.DataFrame(np.random.random((5, 5)))

# Representación del mapa de calor
sns.heatmap(data, center=0, cmap='Blues_r', annot=True, fmt='.3f')

En este código se importa inicialmente las librerías necesarias: seaborn, pandas y numpy. Una vez realizado esto se ha de crear una matriz de datos aleatoria, para lo que se utiliza el método random de numpy. Esta es la matriz que se representa, para lo que se utiliza la función heatmap de seaborn. La función únicamente necesita la matriz que contiene los valores a representar, aunque se puede indicar otros parámetros para personalizar el resultado. En el ejemplo anterior se han empleado:

  • center: el valor en el cual centrar el mapa de color al representar los datos.
  • cmap: indica el mapa que se utilizará para la representación de los valores,
  • annot: indica si se representa o no la magnitud de cada celda en el mapa además del color, por defecto no se representará
  • fmt: es el formato con el que se representará la magnitud.

Los resultados obtenidos con el código anterior se pueden ver en la siguiente figura.

Ejemplo de mapa de calor
Ejemplo de mapa de calor

Diagrama de araña en Python

Los diagramas de araña son una de las mejores maneras para mostrar los valores que toman varias variables con una magnitud. Es decir, se pueden ver los valores que toman diferentes variables a la vez de una magnitud. Así se puede observar de un vistazo si la magnitud de una variable es muy diferente al resto, ya que el área o la longitud se hacen más grandes en la dirección específica. En el caso de que se desee ver cómo se agrupan varias categorías respecto a las mismas características se pueden mostrar unas respecto a otras.

Un ejemplo para crear un diagrama de araña con datos aleatorios se puede ver en el siguiente trozo de código.

# Importación de las librerías
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

# Creación de un conjunto de datos aleatorio
angles = np.linspace(0, 2 * np.pi, 5, endpoint=False)
values = np.random.random(5)

# Se repite el primer valor para cerrar el gráfico
angles=np.concatenate((angles, [angles[0]]))
values=np.concatenate((values, [values[0]]))
labels=['Label 1', 'Label 2', 'Label 3', 'Label 4', 'Label 5']

# Representación del mapa de calor
plt.polar(angles, values, 'o-', linewidth=2)
plt.fill(angles, values, alpha=0.25)
plt.thetagrids(angles * 180 / np.pi, labels)

Este ejemplo es un poco más complejo que el anterior. Al igual que este se y se crea un conjunto de datos aleatorio. A diferencia del ejemplo anterior se importa matplotlib.pyplot en lugar de seaborn. Posteriormente se ha de repetir el primer valor de la serie al final de este, con lo que se puede cerrar el diagrama. En caso de que no se realice este paso no se mostrará un valor entre el primer y último punto.

Finalmente se procede a representar los datos en tres pasos. En primer lugar, se hace el gráfico polar utilizando el método polar, al que es necesario indicar los ángulos en radianes, los valores y las opciones de representación. Posteriormente se puede rellenar el gráfico con un área, aunque este paso es opcional mejora la vistosidad del resultado. Finalmente se han de agregar las etiquetas con los nombres. Los resultados obtenidos con el código anterior se pueden ver en la siguiente figura.

Ejemplo de diagrama de araña
Ejemplo de diagrama de araña

Conclusiones

En esta entrada se ha visto como construir mapas de calor y diagramas de araña en Python. Ambos tipos de gráficos son de gran utilidad a la hora de representar los resultados obtenidos en los análisis de datos.

Imágenes: Pixabay (Claudia)

Sin votos
Por favor espera...

Contenido relacionado

Etiquetas:

Deja un comentario

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