Script for curve fitting
Mostrar comentarios más antiguos
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.
Respuestas (1)
Shashank Prasanna
el 19 de Mzo. de 2013
'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 comentarios
Shashank Prasanna
el 19 de Mzo. de 2013
I created random numbers to show you an example. you can use your own data. I will use random numbers again.
>> x = rand(10,1);
>> y = rand(10,1);
>> [fitresult, gof] = rubb(x, y)
Does executing the above in the command line work for you?
I think the issue is that you are calling the funcion rubb with no arguments although it clearly has two arguments x and y, which you need to pass to it inorder for it to return the fit result.
Shashank Prasanna
el 19 de Mzo. de 2013
Editada: Shashank Prasanna
el 19 de Mzo. de 2013
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.
Categorías
Más información sobre Linear and Nonlinear Regression en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!