Azzera filtri
Azzera filtri

How to find the best fit curve as a vertical scaling of another curve?

4 visualizzazioni (ultimi 30 giorni)
I have a original graph of function f(x). Now I have few points scattered and I want to find a best fit curve through these points. But my new fit curve should be of the form n*f(x) where n is a numerical value. I want to find the value n. How can I do this? Below figure might explain the problem I am talking about. I want to fit curve n*f(x) through orange points and find out n.

Risposta accettata

David Goodmanson
David Goodmanson il 20 Set 2021
Modificato: David Goodmanson il 20 Set 2021
Hi SojM,
Suppose you have points x,y for the function f(x), where x and y are column vectors. And suppose the red points are the set xr,yr, also both column vectors. Then
ynew = interp1(x,y,xr,'spline');
n = ynew\yr
If you have f(x) as an algebraic function, then the first line can be simply
ynew = f(xr)
  1 Commento
SojM
SojM il 22 Set 2021
Thanks. This is what I was looking for. Is there any way to put this into a for loop when x and y are same but there are multiple column vectors data (xr, yr)?

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by