У меня есть массив, который включает достойные наблюдения, нерелевантные наблюдения (которые я хотел бы замаскировать) и области, где нет наблюдений (которые я также хотел бы замаскировать). Я хочу отобразить этот массив как изображение (используя pylab.imshow) с двумя отдельными масками, где каждая маска отображается другим цветом.
Я нашел код для одной маски (здесь) определенного цвета, но ничего для двух разных масок:
masked_array = np.ma.array (a, mask=np.isnan(a))
cmap = matplotlib.cm.jet
cmap.set_bad('w',1.)
ax.imshow(masked_array, interpolation='nearest', cmap=cmap)
Если возможно, я бы хотел избежать использования сильно искаженной цветовой карты, но согласен с тем, что это вариант.