vertical error bar in loglog plot

19 views (last 30 days)
YAACOB MOHD RUSDY BIN
YAACOB MOHD RUSDY BIN on 22 Jun 2019
Commented: dpb on 23 Jun 2019
Hi
I am looking for a way to include error bars (vertical) in my plot from the codes that I am having now.
x=[20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37];
e=[2100 1750 1400 1150 1100 1000 760 620 570 500 450 420 320 310 290 210 220 170];
loglog(x,e,'bo');
hold on
Const1 = polyfit(log(x),log(e), 1);
m1 = Const1(1); k1 = Const1(2);
A = x.^m1.*exp(k1);
loglog(x, A,'k--');
xlim([10 40]);
grid on
Thanks a lot for your kind help!

Accepted Answer

dpb
dpb on 22 Jun 2019
Edited: dpb on 22 Jun 2019
hEB=errorbar(x,A,err);
hAx=gca;
hAx.XScale='log';
hAx.YScale='log';
You'll have to have defined the error magnitude array, err, of course.
  4 Comments
YAACOB MOHD RUSDY BIN
YAACOB MOHD RUSDY BIN on 23 Jun 2019
Thanks a lot!! Now it works after used the simpler evaluation as you suggested! :D
Capture.PNG
dpb
dpb on 23 Jun 2019
That alone should make no difference--the ehat values above are the same as your A array to machine rounding accounting for the difference in computational sequence between the two expressions.
It looks like you now did pass err as the fitting residual on a point basis whereas the previous plot looked more like you had subtracted the residual from the value and used that (altho that didn't reproduce your figure exactly, it was much more similar, so not sure just exactly what you had done).
What you might really be wanting, however, is the RMS error of the overall fit, or a prediction error for the mean or an individual prediction...but, that's entirely up to you depending upon what error it is that you're interested in and for what purpose.

Sign in to comment.

More Answers (0)

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!