I am trying to add error bars to a loglog plot and matlab and nothing I try is working. I've gone about it in many different ways including plotting using plot(x,y) then changing the scale to log, using loglog(x,y), and trying errorbarlogx. I dont know why the error is only above the data point for the later points (it shouldnt be). This is my code that made the above graph.
loglog(distance,radiation)
log_distance=log(distance);
log_radiation=log(radiation);
fit=polyfit(log_distance,log_radiation,1)
m=fit(1)
b=fit(2)
z=polyval(fit,log(distance))
hold on;
errorbar(distance,exp(z),combined_error)
What am I doing wong?

댓글 수: 4

Adam Danz
Adam Danz 2022년 3월 23일
편집: Adam Danz 2022년 3월 23일
Could you provide the values for inputs to errorbar?
Perhaps the easiest way to share them is to save them to a mat file and attach the file in a comment or within the question.
Also let us know if there are any error message or warnings and, if so, provide the entire error/warning text.
Tim Keegan
Tim Keegan 2022년 3월 23일
I attatched it to this
Tim Keegan
Tim Keegan 2022년 3월 23일
I get warning:negative data ignored every time I run it
Adam Danz
Adam Danz 2022년 3월 23일
See Star Strider's answer.
You may also want to review some log properties

댓글을 달려면 로그인하십시오.

 채택된 답변

Star Strider
Star Strider 2022년 3월 23일

0 개 추천

You are likely not doing anything wrong. The lower error bars are most likely negative, and values less than or equal to zero do not plot on a logarithmic axis scale. (Those logarithms are defined, however they are complex, and purely imaginary values do not plot in MATLAB.)

댓글 수: 5

Tim Keegan
Tim Keegan 2022년 3월 23일
but the experimental curve is not within (or even close) to the error bars when they are only above the line of best fit. The experimental curve never gets negative on the loglog plot, so why do the error bars not go down to the experimental curve?
Star Strider
Star Strider 2022년 3월 23일
The lower values of some of the error bars are negative. That’s the reason they’re not plotted.
The error bars are likely defined in a way that produces negative values. If you plot them on a linear y-axis scale, they should all be visible, and the ones that are not plotted on the logarithmic y-axis scale will be negative when plotted on the linear scale.
Tim Keegan
Tim Keegan 2022년 3월 23일
Thank you. Is there any way for me to get the error bars to look normal on the loglog axis? I'm required to do it on a loglog axis for my class.
Adam Danz
Adam Danz 2022년 3월 23일
> Is there any way for me to get the error bars to look normal on the loglog axis?
see this related answer
Tim Keegan
Tim Keegan 2022년 3월 23일
thank you @Adam Danz that worked.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Annotations에 대해 자세히 알아보기

질문:

2022년 3월 23일

댓글:

2022년 3월 23일

Community Treasure Hunt

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

Start Hunting!

Translated by