Azzera filtri
Azzera filtri

Line plot on top of a log log plot

13 visualizzazioni (ultimi 30 giorni)
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.

Risposta accettata

David Goodmanson
David Goodmanson il 11 Lug 2017
Modificato: Walter Roberson il 12 Lug 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 Commenti
Cameron Park
Cameron Park il 12 Lug 2017
thank you! I used the hold on method and it worked perfectly! Appreciate the help!

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Get Started with Curve Fitting Toolbox in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by