Calculating and add the std error bar from the mean values

144 views (last 30 days)
Hi everyone
I have data vector (named: Mean_data) representing the mean of 6 different treatments. I already plotted this Mean_data as a bar graph, but I would like to add the std error bar on the top of each bar. My question is, how can I calculate the std error bar from the mean that I have already got and plot it on the top of each bar.
here is my code and data.
Mean_data=[20.43 8.61 15.37 2.70 29.09 31.59];
% Create figure
figure('Color',[1 1 1]);
% Create axes
axes1 = axes;
hold(axes1,'on');
% Create bar
bar(Mean_data,'DisplayName','Photosynthesis','FaceColor',[0 0 1],...
'BarWidth',0.4);
% Create ylabel
ylabel('µmol m⁻² s⁻¹','FontSize',15);
% Create title
title({'Average of response to each treatment'});
hold(axes1,'off');
% Set the remaining axes properties
set(axes1,'FontSize',12,'FontWeight','bold','XColor',[0 0 0],'XGrid','on',...
'XTick',[1 2 3 4 5 6],'XTickLabel',...
{'treatment1','treatment2','treatment3','treatment4','treatment5','treatment6'},...
'YColor',[0 0 0],'YGrid','on','ZColor',[0 0 0]);
Thanks in advance

Accepted Answer

Scott MacKenzie
Scott MacKenzie on 28 Apr 2022
Edited: Scott MacKenzie on 28 Apr 2022
You can't calculate the standard error from the means. You need the raw data. If the raw data (used to calculate the means) are in a matrix M, then the standard error vector is
se = std(M) / sqrt(size(M,1));

More Answers (0)

Categories

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!