Mapa de color matplotlib: ¿Predefinir las asignaciones a los valores?

Tengo una matriz que estoy viendo usando imshow() . (Imsave () realmente, pero el proceso debe ser idéntico).

Sé que los valores en la matriz estarán entre 0 y 9 y me pregunto si es posible usar cmap para establecer cada salida en un ‘color’ específico. Tal vez mapeando esto a un dict?

Sólo tiene que utilizar un ListedColormap .

Como un ejemplo rápido (pero feo):

 import matplotlib.pyplot as plt from matplotlib.colors import ListedColormap cmap = ListedColormap(['red', 'green', 'blue', 'black'], 'indexed') fig, ax = plt.subplots() im = ax.imshow([range(4)], interpolation='none', cmap=cmap) fig.colorbar(im) plt.show() 

introduzca la descripción de la imagen aquí