Colormap not working: is it too long?
Show older comments
When I use the following colormap, cmap1, I only get two colors displayed in my figure. Why does Matlab hate my colormap?
cjet = [jet];
njet = numel(cjet(:,1));
c0 = 0.2;
cm = 0.3;
c1 = 1.0;
wn = round(njet*(c1-c0)/(cm-c0)-njet)+1;
stp = 1/(wn-1);
jet2white = [(1-(stp:stp:1)')*0.5 zeros(wn-1,1) zeros(wn-1,1)];
cmap1 = [cjet; jet2white];
figure; imagesc(rand(100,100)); colormap(cmap1); caxis([0 1]);
Answers (1)
Image Analyst
on 31 May 2015
0 votes
I get more than 2 colors, but anyway, your cmap1 is 512 rows long. It should be 256 rows long. I believe it just ignores the second 256 rows.
3 Comments
Walter Roberson
on 31 May 2015
256 rows is an MS Windows limitation. OS-X and Linux are happy to use more rows; I just happily used 65535 entries on OS-X.
Mike Garrity
on 1 Jun 2015
The Windows 256 color limitation was removed in R2014b.
Image Analyst
on 1 Jun 2015
Christopher, what operating system and version of MATLAB are you using?
Categories
Find more on Blue in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!