Cómo trazar un mapa de calor 2D con Matplotlib
-
Función
imshow()para trazar el mapa de calor 2D -
Mapa de calor 2D con la biblioteca
Seaborn -
Función
pcolormesh()
Para trazar un mapa de calor 2D, podemos usar cualquiera de los siguientes métodos:
imshow()function with parametersinterpolation='nearest'andcmap='hot'- Biblioteca
Seaborn - Función
pcolormesh()
Función imshow() para trazar el mapa de calor 2D
Sintaxis para que podamos usar la función imshow:
matplotlib.pyplot.imshow(X,
cmap=None,
norm=None,
aspect=None,
interpolation=None,
alpha=None,
vmin=None,
vmax=None,
origin=None,
extent=None,
shape= < deprecated parameter > ,
filternorm=1,
filterrad=4.0,
imlim= < deprecated parameter > ,
resample=None,
url=None,
*,
data=None,
**kwargs)
Códigos de ejemplo:
import numpy as np
import matplotlib.pyplot as plt
data = np.random.random((8, 8))
plt.imshow(data, cmap="cool", interpolation="nearest")
plt.show()

cmap es un mapa de color y también podemos elegir otro colormaps integrado desde aquí.
interpolation es el método de interpolación que podría ser nearest, bilinear, hamming, etc.
Mapa de calor 2D con la biblioteca Seaborn
La biblioteca Seaborn está construida sobre Matplotlib. Podríamos usar la función seaborn.heatmap() para crear un mapa de calor 2D.
import numpy as np
import seaborn as sns
import matplotlib.pylab as plt
data = np.random.rand(8, 8)
ax = sns.heatmap(data, linewidth=0.3)
plt.show()

Seaborn también traza un gradiente al lado del heatmap.
Función pcolormesh()
Otra forma de trazar un mapa de calor 2D es usar la función pcolormesh(), que crea un diagrama de pseudo-color con una cuadrícula rectangular no regular. Es una alternativa más rápida a pcolor() función.
import numpy as np
import matplotlib.pyplot as plt
b, a = np.meshgrid(np.linspace(0, 5, 130), np.linspace(0, 5, 130))
c = (a ** 2 + b ** 2) * np.exp(-(a ** 2) - b ** 2)
c = c[:-1, :-1]
l_a = a.min()
r_a = a.max()
l_b = b.min()
r_b = b.max()
l_c, r_c = -np.abs(c).max(), np.abs(c).max()
figure, axes = plt.subplots()
c = axes.pcolormesh(a, b, c, cmap="copper", vmin=l_c, vmax=r_c)
axes.set_title("Heatmap")
axes.axis([l_a, r_a, l_b, r_b])
figure.colorbar(c)
plt.show()
Producción:

Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn