How to rotate histograms?

 Accepted Answer

Image Analyst
Image Analyst on 5 Oct 2015

2 votes

Did you look at the bottom of the bar() documentation in the "See also" section and notice the barh() function? Does that do what you want?

3 Comments

Barh is ok, but I want it on the right side. How to force that?
Maybe try experimenting with the xdir property of the axis, something like
set(gca, 'xdir', 'reverse');
Dear Image Analyst,
hope you are still reading in these days, just to say that your tip worked for yaxis of barh too.
Thanks for your help.
I attach the code for the community.
b2 = barh(GSCS.GroupCount, 'FaceColor', 'flat');
myColor=rand(height(GSCS.GroupCount), 3);
b2.CData = myColor;
yticklabels = repmat('A', ...
height(GSCS.SuperstructureConstructionSystem), 1);
yticklabels = string(yticklabels);
for i = 1:height(GSCS.SuperstructureConstructionSystem)
yticklabels(i) = GSCS.SuperstructureConstructionSystem(i);
end
xlabel('No. of bridges', 'FontSize', 12);
ylabel('Superstructure Construction System', 'FontSize', 12);
% xtickangle(90);
ax = gca;
ax.XAxis.FontSize = 12;
ax.YTick = 1:1:height(GSCS.SuperstructureConstructionSystem);
ax.YAxis.TickLabels = yticklabels;
ax.YAxis.FontSize = 8;
set(ax, 'ydir', 'reverse')
Best.

Sign in to comment.

More Answers (1)

Steven Lord
Steven Lord on 5 Oct 2015
If you're using the HISTOGRAM function, see the Orientation property of the Histogram object that function returns.

Community Treasure Hunt

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

Start Hunting!