Effacer les filtres
Effacer les filtres

Colormap: set color for ranges

3 vues (au cours des 30 derniers jours)
Colby
Colby le 1 Juil 2015
Commenté : Colby le 2 Juil 2015
I have a matrix that represents a model grid. Non active grid cells are represented by nan within the matrix, cells that don't have data are represented with a zero, and then the rest of the cells are represented with either a positive or a negative number. I want to plot them such that the nan values are all one color, all values that are exactly 0 are one number, values greater than 0 are all one color, and values less than 0 are all one color. I'm at a loss trying to figure out how to do this. Does anyone know how I can accomplish this? Thanks!

Réponse acceptée

Walter Roberson
Walter Roberson le 2 Juil 2015
colorid = sign(DataMatrix) + 3; %negative -> 2, 0 -> 3, positive -> 4
colorid(isnan(colorid)) = 1;
Now nan are 1, negative are 2, 0 are 3, positive are 4. From there you can create 4 x 3 color table such as
colortab = [32 32 32; 0 128 0; 256 0 0; 0 0 0]./256;
image(colorid)
colormap(colortab);
  1 commentaire
Colby
Colby le 2 Juil 2015
This is fantastic! Simple but yet I wouldn't have ever figured it out. Thanks so much for the help!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Colormaps dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by