How can I fit data to a sine curve?
163 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Given a set of data points, how can I find the curve of best fit if I know that this will be a sine curve and nothing else?
0 comentarios
Respuestas (2)
John D'Errico
el 28 de Sept. de 2019
I'll guess the model you want is as below, but use the curve fitting toolbox.
Your model might be defined as:
ft = fittype('sin((x - shift)/xscale)*yscale','coefficients',{'shift','xscale','yscale'})
ft =
General model:
ft(shift,xscale,yscale,x) = sin((x - shift)/xscale)*yscale
Now just call fit to fit the model to your data.
mdl = fit(X,Y,ft,'startpoint',[shiftguess,xscaleguess,yscaleguess]);
Other toolboxes have similar capability, but not quite as easy to use as the CFTB. (Stats TB, optimization TB)
Star Strider
el 28 de Sept. de 2019
It just uses core MATLAB functions. No toolboxes needed at all.
0 comentarios
Ver también
Categorías
Más información sobre Get Started with Curve Fitting Toolbox en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!