MATLAB: How to add error bars to points on a scatter line using their means

error barsgraphmean

I am new to using MATLAB, and i need to plot experimental data, but cant manage to plot error bars. say I have the data set, x = 1, y = 1,2,3 – x = 2, y = 4, 5, 6, etc. i want to plot a graph of x against the mean of y at that point, (so in the first case, x = 1, ybar = 2, etc), but i need to add standard error bars that are calculated using the variation in y for each given point of x. is there any way of doing this?
Thanks

Best Answer

The errorbar function may do what you want:
x = 1:3; % Independent Variable
y = [1 2 3 % Dependent Variable Matrix
4 5 6
7 8 9];
y_mean = mean(y,2); % Mean
y_se = sqrt(var(y,[],2)/size(y,2)); % Standard Error Of The Mean (Data At Each ‘x’ Are Rows)
figure(1)
errorbar(x, y_mean, y_se)
grid
axis([0 4 ylim])
Note In the mean, var, and size function calls, the ‘2’ refers to calculating or referencing along the rows (so calculating it for each row) of the ‘y’ matrix.
If you wanted to calculate down the columns instead, you would either use ‘1’ or use nothing at all, since calculating down the columns is the way MATLAB does its calculations (by default).