Switch X and Y axis in a histogram

54 Ansichten (letzte 30 Tage)
Chen Zhu
Chen Zhu am 10 Apr. 2017
Beantwortet: Steven Lord am 10 Apr. 2017
hist(a)
How to switch the X and Y axis? Currently X represents values, and Y represents the number of elements in that range. I want to switch the X and Y axis, letting X axis represents the number of elements in that range.
Thanks!

Antworten (2)

Steven Lord
Steven Lord am 10 Apr. 2017
Change the histogram object's Orientation property.
x = randn(1, 1e4);
h = histogram(x, 'Orientation', 'vertical');
disp('Press a key to change the orientation')
pause
h.Orientation = 'horizontal';

Star Strider
Star Strider am 10 Apr. 2017
See if the barh (link) function will do what you want.
You will have to use histcounts with it to get the counts and bin edges. Since barh wants the bin centres, one way to calculate them is to take the mean of the difference of the regularly-spaced edges, divide it by 2, and added it to all but the highest bin edge.
Example:
edges = 1:5;
centres = mean(diff(edges))/2 + edges(1:end-1);

Community Treasure Hunt

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

Start Hunting!

Translated by