Line plot on top of a log log plot
13 views (last 30 days)
Show older comments
Cameron Park
on 11 Jul 2017
Commented: Cameron Park
on 12 Jul 2017
I have a loglog plot of data in MATLAB and I am trying to overlay a linear fit. The linear data fitting tool doesn't work, so I was hoping to simply plot another line of slope -11/3. This line should be linear in a loglog plot, but I am having trouble plotting. Can anyone help? New to MATLAB so any advice would be useful. I have attached a picture of the plot I keep getting. The blue line is the loglog data plot, and the orange line is MATLAB's "linear fit" when using the basic plotting tool.
0 Comments
Accepted Answer
David Goodmanson
on 11 Jul 2017
Edited: Walter Roberson
on 12 Jul 2017
Hello Cameron, If you have a linear fit in the logs,
log(y) = (-11/3)log(x) + A
then exponentiate both sides:
y = x^(-11/3) exp(A)
and with C = exp(A), the fitting line (linear on loglog plot) is
y = C*x.^(-11/3)
where you just have to provide C. C could come from the same theory that gives the -(11/3), in which case you have a fit with no adjustable parameters, nice if it works. Or you could calculate C by using one (x,y) data point, or you could fit A from the first equation by taking the difference between log(y) and (-11/3)*log(x), and averaging that difference over all the values to get A. Then C = exp(A).
If you prefer log base 10, then replace log by log10 and C = exp(A) by C = 10^A everywhere.
6 Comments
More Answers (0)
See Also
Categories
Find more on Get Started with Curve Fitting Toolbox 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!