Tengo una imagen simple que estoy mostrando con imshow en matplotlib. Me gustaría aplicar un mapa de colores personalizado para que los valores entre 0-5 sean blancos, 5-10 sean rojos (colores muy simples), etc. He intentado seguir este tutorial:Definición de un mapa de colores discreto para imshow en matplotlib
http://assorted-experience.blogspot.com/2007/07/custom-colormaps.html con el siguiente código:
cdict = {
'red' : ((0., 0., 0.), (0.5, 0.25, 0.25), (1., 1., 1.)),
'green': ((0., 1., 1.), (0.7, 0.0, 0.5), (1., 1., 1.)),
'blue' : ((0., 1., 1.), (0.5, 0.0, 0.0), (1., 1., 1.))
}
my_cmap = mpl.colors.LinearSegmentedColormap('my_colormap', cdict, 3)
plt.imshow(num_stars, extent=(min(x), max(x), min(y), max(y)), cmap=my_cmap)
plt.show()
Pero esto termina mostrando colores extraños, y solo necesito 3-4 colores que quiero definir. ¿Cómo hago esto?
Pregunta similar: http://stackoverflow.com/questions/9451545/using-matplotlib-to-draw-color-bar-with-distinguishable-and-uncontinues-colors/9451776#9451776 –