How to create a personalized colormap?
4 views (last 30 days)
Show older comments
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
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.
Answers (1)
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.
0 Comments
See Also
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!