Fitting a curve to data

  • Thread starter gnome
  • Start date
1,037
1
I have a set of data points relating the width of an object in an image to its distance from the camera. I'd like to find the simplest curve that fits "pretty well". When I graph the points, it looks like a hyperbola would be a good fit. Is there a simple iterative method to find an equation?

The data:
(20, 59)
(30, 44)
(40, 34)
(50, 28)
(60, 24)
(70, 21)
(80, 19)
(90, 17)
(100, 15)
(125, 12)
(150, 10)
(175, 9)
(200, 8)
(225, 7)
(250, 6)
I suppose I could add (0,infinity) to that list. Nothing above x=250 is relevant.
 

Integral

Staff Emeritus
Science Advisor
Gold Member
7,185
55
There is no way to generate the functional relationship. You need to "guess" a relationship then attempt to find the characteristic parameters.
 

uart

Science Advisor
2,776
9
I have a set of data points relating the width of an object in an image to its distance from the camera. I'd like to find the simplest curve that fits "pretty well". When I graph the points, it looks like a hyperbola would be a good fit. Is there a simple iterative method to find an equation?
Yes theoretically it should be a hyperbola. So take the reciprocal of the second data column and then it should be a straight line.
 

matt grime

Science Advisor
Homework Helper
9,394
3
log log plots. as were taught decades ago, but seemingly not anymore....
 
1,037
1
Thanks, uart, that was very helpful.

Matt: I'll put that on my to-do list. ;)
 

matt grime

Science Advisor
Homework Helper
9,394
3
It's quite a simple device, really.


If you believe that data x_i and y_i are related by something like x^n=k*y^m, then taking logs nlog(x)=log(k)+mlog(y), i.e. their logs should form a straight line graph. You can also try variations if you thought that y^n=k*exp(x), or something similar. You used to be able to buy log-log graph paper to do this. So I'm told - I'm too young to have used this.
 

Gib Z

Homework Helper
3,344
4
I quite like [itex]y = 957.83 x^{-0.9057}[/itex] thank you very much :)
 

uart

Science Advisor
2,776
9
I quite like [itex]y = 957.83 x^{-0.9057}[/itex] thank you very much :)

Or

[tex]y = \frac{1000}{0.63 x + 3.65}[/tex]

It depends on what model you choose to fit.
 

Integral

Staff Emeritus
Science Advisor
Gold Member
7,185
55
If you wanted something of physical interest you would attempt to find a f such that:

[tex] \frac 1 x + \frac 1 y = \frac 1 f [/tex]

I would guess this relationship since I know about the thin lens formula. That is the trouble with simply fitting data with no thought of the known physical relationships. You can get perfectly good fits which have no physical meaning.
 
1,341
3
log log plots. as were taught decades ago, but seemingly not anymore....
Actually we just did them in my physics I highschool course to show Kepler's 3rd using the orbital radius and period of the planets :rofl:

But yeah the slope of the log-log graph is the power of the function.

Edit: I got:
[tex]y=\frac{957.83}{x^{.90499}}[/tex]
 
Last edited:

Related Threads for: Fitting a curve to data

  • Posted
Replies
3
Views
2K
  • Posted
Replies
4
Views
19K
Replies
6
Views
1K
  • Posted
Replies
2
Views
597
  • Posted
Replies
4
Views
551
  • Posted
Replies
1
Views
2K
  • Posted
Replies
5
Views
764

Physics Forums Values

We Value Quality
• Topics based on mainstream science
• Proper English grammar and spelling
We Value Civility
• Positive and compassionate attitudes
• Patience while debating
We Value Productivity
• Disciplined to remain on-topic
• Recognition of own weaknesses
• Solo and co-op problem solving

Hot Threads

Top