Perceptually improved colormaps
PMKMP Returns perceptually balanced colormaps
PMKMP(N,SCHEME) returns an Nx3 colormap.
usage: map=pmkmp(n,scheme);
%% Example1: 128-color rainbow with cubic-law luminance (default)
load mandrill;
imagesc(X);
colormap(pmkmp(128));
colorbar;
%% Example2: 128-color palette for azimuthal data
a=0:8:360;
b = repmat(a,[46 1]);
imagesc(b);
colormap(pmkmp(128,'IsoAZ'));
colorbar;
JUSTIFICATION: rainbow, or spectrum color schemes are considered a poor choice for scientific data display by many in the scientific community (see for example reference 1 and 2 in the help) in that they introduce artefacts that mislead the viewer. "The rainbow color map appears as if it is separated into bands of almost constant hue, with sharp transitions between hues. Viewers perceive these sharp transitions as sharp transitions in the data, even when this is not the casein how regularly spaced (interval) data are displayed (quoted from reference 1). This submission is intended to share the results of my efforts to create more perceptually balanced color maps. Please see output arguments section for descriptions.
See files examples.m, examples1.m, and example2.m and associated figures for more examples
See files MakeLabPlotUsingColorspace.m and CompareLabPlotsUsingColorspace.m for some demonstrations.
See also: JET, HSV, GRAY, HOT, COOL, BONE, COPPER, PINK, FLAG, PRISM, COLORMAP, RGBPLOT
Extensive reference list and list of other FEX submissions of interest included in the help
Please visit my blog to read about the background research:
http://mycarta.wordpress.com/2012/05/29/the-rainbow-is-dead-long-live-the-rainbow-series-outline/
Author: Matteo Niccoli
e-mail address: matteo@mycarta.ca
Release: 4.04
Release date: November 2014
Cite As
Matteo Niccoli (2022). Perceptually improved colormaps (https://www.mathworks.com/matlabcentral/fileexchange/28982-perceptually-improved-colormaps), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Acknowledgements
Inspired by: Spectral and XYZ Color Functions, Shaded pseudo color, cline, MakeColorMap, Light Bartlein Color Maps, Colorspace Transformations
Inspired: paruly, colormapline - color-changing 2D or 3D line, MatPlotLib Perceptually Uniform Colormaps
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.