File Exchange

image thumbnail

custom colormap

version 1.1 (2.33 KB) by

sets the colormap according to monotonically increasing user defined ranges

2 Downloads

Updated

View License

This function is useful if you don't want to use the linear scaled colormap that are the default in Matlab.
   
USAGE:
         CUSTOMCMAP(cbar_labels,user_cmap,minMaxValues)
                    
% INPUT:
% cbar_labels - Vector (n x 1) of monotonically increasing ranges of data
% user_cmap - Matrix ((n-1) x 3) of colormap you want to see
% minMaxValues - Vector (2 x 1) of minimum and maximum value of data
% that is plotted
%
%
% EXAMPLES:
data = rand(10,10);
minVal = min(min(data));
maxVal = max(max(data));
image(data,'CDataMapping','scaled');
cbar_labels = [0 0.12 0.2 0.3 0.5 0.6 0.75 0.8 1]; % user defined ranges
user_cmap = jet(8); % user defined colormap
customcmap(cbar_labels,user_cmap,[minVal maxVal])

Bug and comments are welcome.

Comments and Ratings (6)

Great Function. Love it.

The only issue is, when making maps with contourf() with EdgeColor on and changing subsequently the colors with CUSTOMCMAP(), the isolines are wrong (still the old ones). However, that's not a real issue / not the job of CUSTOMCMAP()

mohammed

It does not seems to compatible to subplot.

Zhi Liu

Zhi Liu

How should I adjust it so that I can show gradients between labels?

Updates

1.1

Minor bug fixed.

MATLAB Release
MATLAB 7.10 (R2010a)
Acknowledgements

Inspired: Valcolor

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video