Pitón

Mapas de calor y barras de colores en Matplotlib

Mapas de calor y barras de colores en Matplotlib
La visualización de datos es uno de los pasos más cruciales en la ciencia de datos (o cualquier otra ciencia, para el caso). Nosotros, como humanos, somos pobres para entender las filas y filas de números. Es por eso que siempre es útil tener una utilidad como Matplotlib para ayudarnos a desarrollar una intuición visual de lo que sucede cuando, por ejemplo, un algoritmo de aprendizaje automático está clasificando grandes cantidades de datos.

Si bien los gráficos que muestran la relación entre dos variables como la altura y el peso se pueden trazar fácilmente en una pantalla plana como se muestra a continuación, las cosas se complican mucho cuando tenemos más de dos parámetros.

Ahí es cuando las personas intentan cambiar a gráficos 3D, pero a menudo son confusos y torpes, lo que frustra todo el propósito de la visualización de datos. Necesitamos mapas de calor para imágenes.

Que son los mapas de calor?

Si miras la imagen de una cámara térmica, puedes ver un mapa de calor literal. La cámara de imagen térmica representa diferentes temperaturas en diferentes colores. El esquema de coloración apela a nuestra intuición de que el rojo es un "color cálido" y toma el azul y el negro para representar superficies frías.

Esta vista de Marte es un muy buen ejemplo donde las regiones frías son de color azul mientras que las regiones más cálidas son principalmente rojas y amarillas. La barra de colores de la imagen muestra qué color representa qué temperatura.

Usando matplotlib podemos asociar un punto (x, y) en el gráfico con un color específico que representa la variable que estamos tratando de visualizar. No es necesario que sea la temperatura, podría ser cualquier otra variable. También mostraremos un barra de color junto a él para indicar a los usuarios qué significan los diferentes colores.

A menudo, verías a las personas mencionar mapas de color en lugar de mapas de calor. Estos a menudo se usan indistintamente. Mapa de colores es un término más genérico.

Instalación e importación de Matplotlib y paquetes relacionados

Para comenzar con Matplotlib, asegúrese de tener instalado Python (preferiblemente Python 3 y pip). También necesitarás numpy, scipy y pandas trabajar con conjuntos de datos. Como vamos a graficar una función simple, solo dos de los paquetes numpy y matplotlib van a ser necesarios.

$ pip instalar matplotlib numpy
# o si tiene Python dos y tres instalados
$ pip3 instalar matplotlib numpy

Una vez que haya instalado las bibliotecas, debe asegurarse de que se importen en su programa Python.

importar numpy como np
importar matplotlib.pyplot como plt

Ahora puede utilizar las funciones proporcionadas por estas bibliotecas utilizando una sintaxis como notario público.numpyfunction ()plt.alguna otra función ().

Algunos ejemplos

Comencemos trazando una función matemática simple que toma puntos en un plano (sus coordenadas xey) y les asigna un valor. La captura de pantalla a continuación muestra la función junto con el gráfico.

Los diferentes colores representan diferentes valores (como lo indica la escala al lado del gráfico). Veamos el código que se puede usar para generar este.

importar numpy como np
importar matplotlib.pyplot como plt
 
# Función matemática que necesitamos graficar
def z_func (x, y):
return (1 - (x ** 2 + y ** 3)) * np.exp (- (x ** 2 + y ** 2) / 2)
# Configuración de valores de entrada
x = np.arange (-3.0, 3.0, 0.1)
y = np.arange (-3.0, 3.0, 0.1)
X, Y = np.cuadrícula (x, y)
 
# Calcular la salida y almacenarla en la matriz Z
Z = z_func (X, Y)
 
im = plt.imshow (Z, cmap = plt.cm.RdBu, extensión = (- 3, 3, 3, -3), interpolación = 'bilineal')
 
plt.barra de color (im);
 
plt.título ('$ z = (1-x ^ 2 + y ^ 3) e ^ - (x ^ 2 + y ^ 2) / 2 $')
 
plt.show()

Lo primero que debe notar es que importamos solo matplotlib.pyplot una pequeña parte de toda la biblioteca. Dado que el proyecto es bastante antiguo, se han acumulado muchas cosas a lo largo de los años. Por ejemplo, matplotlib.pyplot era popular en el pasado, pero ahora es solo una reliquia histórica e importarlo solo agrega más hinchazón a su programa.

A continuación definimos la función matemática que deseamos graficar. Toma dos valores (x, y) y devuelve el tercer valor z. Hemos definido la función aún no la usamos.

La siguiente sección asume la tarea de crear una matriz de valores de entrada, usamos numpy para eso, aunque puede usar la compilación en distancia() funciona para eso si quieres. Una vez que se prepara la lista de valores xey (que van de 3 a 3 negativos) calculamos el valor z a partir de ella.

Ahora que hemos calculado nuestras entradas y salidas, podemos trazar los resultados. La plt.imshow () le dice a Python que la imagen estará relacionada con Z, que es nuestra variable de salida. También dice que va a ser un mapa de colores, un cmap, con rojo azul (RdBu) Escala que se extiende de -3 a 3 en cualquier eje. La interpolación El parámetro hace que el gráfico sea más suave, artificialmente. De lo contrario, su imagen se vería bastante pixelada y tosca.

En este punto, se crea el gráfico, pero no se imprime. Luego agregamos la barra de colores en el costado para ayudar a correlacionar diferentes valores de Z con diferentes colores y mencionamos la ecuación en el título. Estos se hacen en pasos plt.barra de colores (im) y plt.título(… ). Finalmente, llamar a la función nos muestra el gráfico en la pantalla.

Reutilización

Puede utilizar la estructura anterior para trazar cualquier otro mapa de colores 2D. Ni siquiera tienes que ceñirte a las funciones matemáticas. Si tiene grandes conjuntos de datos en su sistema de archivos, tal vez información sobre ciertos datos demográficos o cualquier otro dato estadístico, puede conectarlo modificando el X, Y valores sin alterar la sección del mapa de colores.

Espero que este artículo le haya resultado útil y si le gusta contenido similar, háganoslo saber.

El cursor salta o se mueve aleatoriamente mientras escribe en Windows 10
Si descubre que el cursor del mouse salta o se mueve por sí solo, automáticamente, de manera aleatoria mientras escribe en una computadora portátil o ...
Cómo invertir la dirección de desplazamiento del mouse y los paneles táctiles en Windows 10
Ratón y Panel táctils no solo facilitan la informática, sino que también hacen que sea más eficiente y requieran menos tiempo. No podemos imaginar una...
Cómo cambiar el tamaño, el color y el esquema del puntero del mouse y del cursor en Windows 10
El puntero y el cursor del mouse en Windows 10 son aspectos muy importantes del sistema operativo. Esto también se puede decir de otros sistemas opera...