Clear Filters
Clear Filters

How to create a personalized colormap?

5 views (last 30 days)
Luca
Luca on 27 Nov 2012
I would like to create a colormap function which takes in a value from say 0 to 100 and return a color, which I can then use in plot/patch functions. I'd need the color to go from white to e.g. red, but if you can provide a general example it's even better.
Thanks for any tip!
  1 Comment
Image Analyst
Image Analyst on 28 Nov 2012
Edited: Image Analyst on 28 Nov 2012
How about
myColormap = flipud(hot(100))
indexes start at 1. If you need to start at 0 just add one before you get the actual index.

Sign in to comment.

Answers (1)

Matt Fig
Matt Fig on 27 Nov 2012
Edited: Matt Fig on 27 Nov 2012
You can easily do it. Make the surface go from white to red as you say...
peaks(100);
set(findobj('type','surf'),'edgecolor','none')
CM = [ones(1,100);linspace(0,1);linspace(0,1)].';
set(gcf,'colormap',CM)
% Or, set(gcf,'colormap',flipud(CM))
So to use a colormap you just need an m-by-3 matrix. Each row is a color that will be indexed into by surfaces, etc. To find out more, look at the documentation for colormap.

Categories

Find more on Colormaps in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!