How can I add individual error bars to a grouped bar graph plot?
1 view (last 30 days)
Show older comments
x1 = [2.5; 7.5];
y = [y1PB y5PB; y2PB y6PB; y3PB y7PB; y4PB y8PB; y1RW y5RW; y3RW y7RW];
%error bars
errorplus = [0.000733045 0.000677482; 0.000782014 0.001159467; 0.001100796 0.000036955; 0.000698661 0.001299515; 0.000346841 0.001043998; 0.00040963 0.002191148];
errorneg = errorplus
figure;
% Plot the bar graph
b = bar(x1, y, 'FaceColor', 'flat');
[nGroups,nBars] = size(y);
hold on
x = reshape([b.XEndPoints],[nGroups, nBars]);
errorbar(x,y,errorplus, errorneg,'k','linestyle','none');
hold off

0 Comments
Accepted Answer
Voss
on 27 Aug 2024
Replace
x = reshape([b.XEndPoints],[nGroups, nBars]);
with
x = vertcat(b.XEndPoints);
Example, using random data:
x1 = [2.5; 7.5];
% y = [y1PB y5PB; y2PB y6PB; y3PB y7PB; y4PB y8PB; y1RW y5RW; y3RW y7RW];
y = 0.035*rand(6,2);
%error bars
errorplus = [0.000733045 0.000677482; 0.000782014 0.001159467; 0.001100796 0.000036955; 0.000698661 0.001299515; 0.000346841 0.001043998; 0.00040963 0.002191148];
errorneg = errorplus;
figure;
% Plot the bar graph
b = bar(x1, y, 'FaceColor', 'flat');
[nGroups,nBars] = size(y);
hold on
x = vertcat(b.XEndPoints);
errorbar(x,y,errorplus, errorneg,'k','linestyle','none');
hold off
More Answers (0)
See Also
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!