Estoy tratando de usar imshow en matplotlib para trazar los datos como un mapa de calor, pero algunos de los valores son NaN. Me gustaría que los NaN se rendericen como un color especial que no se encuentra en el mapa de colores.¿Cómo puedo trazar los valores NaN como un color especial con imshow en matplotlib?
ejemplo:
import numpy as np
import matplotlib.pyplot as plt
f = plt.figure()
ax = f.add_subplot(111)
a = np.arange(25).reshape((5,5)).astype(float)
a[3,:] = np.nan
ax.imshow(a, interpolation='nearest')
f.canvas.draw()
La imagen resultante es inesperadamente todo azul (el color más bajo en el mapa de colores de chorro). no
ax.imshow(a, interpolation='nearest', vmin=0, vmax=24)
--¡entonces me sale algo mejor, pero los valores NaN se dibujan del mismo color que Vmin ... es una forma elegante que puedo fijar a NaNs: Sin embargo, si hago el trazado como esto dibujar con un color especial (por ejemplo: gris o transparente)?
Unos años más tarde ('matplotlib .__ version __ == '1.2.1''), esto funciona sin problemas. –