bar and histograms for categorical data

41 views (last 30 days)
I have this vector and std =[ 0.4041 0.7670 1.0682 0.6582 0.0475] and these lyer=categoris [{'crust','upper mantle','lower mantle','outer core','inner core'} and each of them correspound to the array values and want to make a histogram of this . i used bar(lyers,std) but the order of categores is not as required. is there a way to fix this or i should use diffrent commands.

Accepted Answer

Ramnarayan Krishnamurthy
Ramnarayan Krishnamurthy on 4 Oct 2017
MATLAB by default places categories in alphabetical order. One of the possible approaches to switching the order of the bars is as follows (tested in R2017a):
% Setup data
std =[ 0.4041 0.7670 1.0682 0.6582 0.0475]
lyer = categorical({'crust' 'upper mantle' 'lower mantle' 'outer core' 'inner core'})
% Reorder the categories in the order you want using reordercats
reorder_lyer = reordercats(lyer,{'crust','lower mantle' ,'upper mantle' ,'inner core' ,'outer core'});
Another approach may involve switching the XData, YData or XDataMode.

More Answers (0)


Find more on Data Distribution Plots 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!