Script for curve fitting

4 次查看(过去 30 天)
KV
KV 2013-3-19
Hi, being very newish to Matlab I am trying to solve a simple problem to begin with, and advance from there. I have 2 sets if data (named x and y in workspace). When I use curve fitting tool to fit the data, it works fine, but if I use the script below in .m file, I get error saying more input arguments are needed to run.
ft = fittype ('poly4'); [xdata, ydata] = prepareCurveData(x,y); c = fit(xdata,ydata,ft);
I have tried the fit from curve fitting toolbox and using generate code function and I get the same error. What am I missing here?
Any help is appreciated.

回答(1 个)

Shashank Prasanna
Shashank Prasanna 2013-3-19
'Generate code' usually returns a function and not a scrip. Is it possible that you are not calling the function with the right arguments?
Could you paste the exact error message from the command line?
Also, could you run the following and see if it works?
>> x = rand(10,1);
>> y = rand(10,1);
>> ft = fittype ('poly4'); [xdata, ydata] = prepareCurveData(x,y); c = fit(xdata,ydata,ft);
  4 个评论
Shashank Prasanna
Shashank Prasanna 2013-3-19
编辑:Shashank Prasanna 2013-3-19
Just to add to that, you can't just execute the generated code. You will need to call it as showed above, either from the command line or from another script. hth.
KV
KV 2013-3-20
编辑:KV 2013-3-20
Your commands execute perfectly fine in command window. I am confused as to what other possible input argument there can be that I am missing. I have just tried running and calling the m script file containing just the code below:
function [c,z] = createFit(x,y);
[a, b] = prepareCurveData(x,y);
ft = fittype ('poly4');
c = fit(a,b,ft);
z = c(750);
Now when I run this m script file, it executes fine but if I call it from another script (which is what I eventually want to do) or from command window then it gives same error again (Error using createFit (line 2) Not enough input arguments).
I am struggling to understand what am I missing.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Linear and Nonlinear Regression 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by