How to best fit a curve to my data

6 ビュー (過去 30 日間)
Iddo Weiner
Iddo Weiner 2017 年 12 月 5 日
コメント済み: Iddo Weiner 2017 年 12 月 5 日
Hi, I have 2 variables (attached in the file myXY.mat) to which I would like to fit a curve.
I'm expecting to receive something like this (the pic is manually drawn):
Here's my code:
f = fit(X,Y,'exp1')
plot(f,X,Y)
And here's what I get:
Any ideas what the code should be to receive a fit more similar to what I drew?
  2 件のコメント
Geoff Hayes
Geoff Hayes 2017 年 12 月 5 日
Iddo - have you tried a polynomial fit instead? i.e. poly2 or poly3?
Iddo Weiner
Iddo Weiner 2017 年 12 月 5 日
Hi, I tried it now, but it doesn't really get any better.
What actually is working for me now is a function called sigm_fit which I found in the file exchange:
https://www.mathworks.com/matlabcentral/fileexchange/42641-sigm-fit
  • But I would still like to know if there's a "native" MATLAB solution for this..
Thanks

サインインしてコメントする。

採用された回答

Matt J
Matt J 2017 年 12 月 5 日
f=fit(X,Y,'power2')
  1 件のコメント
Iddo Weiner
Iddo Weiner 2017 年 12 月 5 日
thanks

サインインしてコメントする。

その他の回答 (1 件)

Rik
Rik 2017 年 12 月 5 日
You need to change the starting guesses and you might have to adjust the function itself.
x=0:0.01:10;
y=1-exp(-x);
plot(x,y)
The code above will result in a similar shape of what you are asking. 'exp1' will support this, except for the offset. You can provide your own function instead by using the anonymous function input.
PS you need to make sure that for your application, it is indeed an exponential function and not a (square) root.

カテゴリ

Help Center および File ExchangeCurve Fitting Toolbox についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by