File Exchange

image thumbnail


version (3.43 KB) by William Murphy
Create a 3-dimensional barchart where the height of the bar chooses the color.


Updated 31 Mar 2016

View Version History

View License

The bar3 function was modified to make the color map variable, cc, match the height variable, zz. The cc variable has the height for each of the faces of the bar. Seven lines of code were added to bar3 to modify the color map.

Cite As

William Murphy (2021). bar3color(varargin) (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (6)

Ali Fallah Yeznabad

Ali Fallah Yeznabad


Eran Mukamel

Marty Schlosser

The few lines of code above by 'us' do a good quick job for color varying with bar height, but the entire bar does not color in like the function bar3color will.

Is there a way to create a stacked bar using the same colors used in a bar3color of a given data set? For example, if I use:

hh = bar3color(peaks(3));

I get a 3x3 plot whose bars are colored as a function of their height. I'd like to keep these same colors, for the same data, and stack the rows (or columns) so that the new stacked bar plot shows the total height, but each bar contributing to its total has the color used in the previous bar3color plot.

I want to do this so I can condense a bunch of information that I have on a bar3color plot into two dimensions and keep the coloring scheme so the eye can move easily between the same data on two different plots.


these few lines do the same without need to change BAR3...

% create a stock bar3
% the engine
for i=1:length(bh)
% choose your color...


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

Inspired: superbar

Community Treasure Hunt

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

Start Hunting!