Is it possible to define colormap ranges or merge colormaps?

44 Ansichten (letzte 30 Tage)
lstr
lstr am 25 Aug. 2022
Kommentiert: lstr am 25 Aug. 2022
I am creating a heat map using imagesc with data in [0 100]. I need to emphasize two data ranges as distinct, say [0 5] shades of red and [5 100] colors that are not red.
I'm a proficient MATLAB user/googler generally, but am not sure what vocabulary to use when searching. Any advice - either tips on how to accomplish this or terms to google - would be welcome!
Thanks!

Akzeptierte Antwort

Chad Greene
Chad Greene am 25 Aug. 2022
Try concatenating colormaps, like this. Below I'm using my cmocean colormaps, which are available on File Exchange, but you can concatenate any RGB arrays.
% Some data
Z = abs(peaks(500));
Z = 100*Z/max(Z(:)); % scaled 0 to 100
figure
imagesc(Z)
cb = colorbar;
% Two colormaps:
col1 = cmocean('amp',6); % 6 shades of red
col2 = parula(95); % 95 shades of parula
% Concatenate colormaps:
col = cat(1,col1,col2);
colormap(col)

Weitere Antworten (0)

Kategorien

Mehr zu Colormaps finden Sie in Help Center und File Exchange

Tags

Produkte


Version

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by