Question for color set in colorbar

3 views (last 30 days)
aurc89
aurc89 on 30 Mar 2020
Commented: Ameer Hamza on 30 Mar 2020
Hello,
I plot an image using imagesc, and the colorbar is automatically set from blue (lowest value, e.g. 0) to red (highest value, e.g. 1). Is there a way to set the interval color from white (lowest value) to red (highest value) ?
Thanks

Accepted Answer

Ameer Hamza
Ameer Hamza on 30 Mar 2020
Edited: Ameer Hamza on 30 Mar 2020
You can also create you custom colormap
White = [1 1 1];
Red = [1 0 0];
t = linspace(0,1,100)';
cmap = Red.*t + White.*(1-t);
colormap(cmap);
colorbar
  6 Comments
aurc89
aurc89 on 30 Mar 2020
Now it works! Thanks!

Sign in to comment.

More Answers (2)

darova
darova on 30 Mar 2020
Yes, there is a way. Use colormap
cmap = hot(100);
colormap(cmap(30:end,:)) % i use only last 70 values because first 30 is too dark
colorbar
  1 Comment
aurc89
aurc89 on 30 Mar 2020
Thanks! But this gives the opposite (dark=minimum, white=maximum), what if I want the reversed one (white=minimum, dark=maximum) ?

Sign in to comment.


Image Analyst
Image Analyst on 30 Mar 2020
Try this:
grayImage = imread('cameraman.tif');
white = [1 1 1];
red = [1 0 0];
imagesc(grayImage);
ramp = linspace(0, 1, 256)';
ramp = [ramp, ramp, ramp];
customColorMap = red .* ramp + white .* (1-ramp);
colormap(customColorMap);
colorbar
  1 Comment
aurc89
aurc89 on 30 Mar 2020
I see the image but the code gives error, I think it's due to my previous version of Matlab.
Thanks anyway! I think it works now

Sign in to comment.

Categories

Find more on Colormaps in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!