Plotting multiple bar graphs
Show older comments
Hi everyone, I am plotting 3 different bar graphs on a same figure window. I have managed up to this point, shown in the figure. I want them to be side by side not overlapping. Any help guys ?
figure(5);
hold on;
bar(xdata,bpcombine3,0.125,'FaceColor',[0,0,1],...
'EdgeColor',[0,0,1]);
bar(xdata,bpcombine2,0.25,'FaceColor',[0,1,0],...
'EdgeColor',[0,1,0]);
bar(xdata,bpcombine1,0.4,'FaceColor',[1,0,0]);
set(gca, 'XTick', 1:6, 'XTickLabel', labels);
title('Blocking Probability vs Routing Level');

Accepted Answer
More Answers (2)
Althaf V S
on 8 Dec 2018
figure()
% NOT an efficeint way,......BUT GOOD way to control all the elements of bar chart
set(gcf,'color','white');
ca = categorical({'SP5#1','SP5#2','SP6#Part 1B','SP6#Part 1C'});
bar(ca(1),sp51bs)
hold on
bar(ca(2),sp52bs)
hold on
bar(ca(3),maxbssp6)
hold on
bar(ca(4),maxbssp6c)
title('PART D: Compare BASE SHEAR ');
legend('SP5#1','SP5#2','SP6#Part 1B','SP6#Part 1C');
ylabel('BASE SHEAR (Kips)');

1 Comment
Franciszek Aniol
on 7 Mar 2022
I recommend this change to make it less tedious
ca = categorical({'SP5#1','SP5#2','SP6#Part 1B','SP6#Part 1C'});
value = [sp51bs sp52bs maxbssp6 maxbssp6c]
for n = 1:1:4 %could also use range of the vector called value as such 1:1:range(value)
bar(ca(n),value(n);
end
Al in St. Louis
on 14 May 2019
2 votes
It's really frustrating that bar insists on making a stacked graph, and there is literally no way to change it to grouped without mucking around creating a new matrix.
Categories
Find more on Discrete Data 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!