How to fix the mapping between colors and values?

3 visualizaciones (últimos 30 días)
zhehao.nkd
zhehao.nkd el 6 de En. de 2022
Respondida: zhehao.nkd el 6 de En. de 2022
I have a few matrices containing different integers, and I know all the possible intergers which can be found within these matrices. But not every integer will appear in each matrices, like:
% possible integers 0 1 2 3
x = randi([0 3],10,10); % from 0 to 3
y = randi([0 2],10,10); % from 0 to 2
z = randi([0 1],10,10); % from 0 to 1
Then how can I fix the mapping between matrix integers and RGB colors so that specific integer is always associated with specific color( as commented ) ?
cmap= [0 0 1;... % blue for 0
0 1 0;... % green for 1
1 0 0;... % red for 2
1 1 1]; % white for 3
figure;
imagesc(x);
colormap(cmap);
figure;
imagesc(y);
colormap(cmap);
figure;
imagesc(z);
colormap(cmap);

Respuesta aceptada

zhehao.nkd
zhehao.nkd el 6 de En. de 2022
I found out the solution by using
caxis manual
caxis([0,3]);
But the prerequisite is that the values should be linearlly distributed with the same gap in between.

Más respuestas (1)

KSSV
KSSV el 6 de En. de 2022
x = randi([0 3],10,10); % from 0 to 3
y = randi([0 2],10,10); % from 0 to 2
z = randi([0 1],10,10); % from 0 to 1
cmap= [0 0 1;... % blue for 0
0 1 0;... % green for 1
1 0 0;... % red for 2
1 1 1]; % white for 3
imagesc(x)
colormap(cmap)
colorbar

Categorías

Más información sobre Colormaps en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by