File Exchange

image thumbnail


version (131 KB) by Carey Rappaport
A colormap for effective black and white rendering of color scale images.


Updated 18 Nov 2002

View License

Default colormaps on color images often reproduce to confusing grayscale images. The proposed colormap maintains an aesthetically pleasing color image that automatically reproduces to a monotonic grayscale with discrete, quantifiable saturation levels.

It is quite informative to display intensity information in terms of color levels in a graphic image. While the default mapping of intensity values to color (the ?colormap?) in commercial software, such as MATLAB? gives a visually pleasing and quantitatively useful graphic, much of this information is often lost when the original color image is printed or photocopied in black and white. This is due to the mapping of different colors to the same shade of gray, often resulting in both the maximum and the minimum intensity values ending up as black. To maintain high quality black and white images, the author generating the image is forced to use a grayscale colormap, and lose the attractive color option on his computer screen and his presentation images, or generate two separate renderings of the same information, one in black and white and one in color (or pay the particular journal?s expensive color printing charges).

Rather than sacrifice the pretty colors, we devised a colormap that preserves colors, but mixes the color components so that the back and white rendering of the colormap produces a grayscale representation that is monotonic with intensity. Thus the color images photocopy and print to effective black and white images suitable for journal printing. In addition, we divided the continuously variable color scale into nine discrete levels. Though variations in color are easy to see and quantify, continuously varying grayscale is quite difficult to interpret quantitatively. With nine discrete levels, the color representation more effectively maps to a quantifiable grayscale with enough levels to capture most of the fine scale intensity variation while maintaining enough difference between levels to be discernable.

Cite As

Carey Rappaport (2021). CMRmap.m (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (4)

Shoufeng Lin

Oliver Woodford

Real2rgb contains a colormap called thermal which is very similar to this one, in addition to many other alternatives (as Ged mentions).

Ged Ridgway

A very useful colormap, which looks good both in color and in grayscale. I personally prefer this (in color) to the linear-gray alternatives in ID 23342, though the latter tool is perfect for its primary purpose of converting data to truecolor.

Oliver Woodford

real2rgb (fex id: 23342) offers many new colormaps which map to linear grayscale intensity, and can also convert standard colormaps such as 'hot' to fulfil this criterion.

MATLAB Release Compatibility
Created with R11
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

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

Start Hunting!