How can I create a curve that will fit my data?
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Elham
el 23 de Jun. de 2022
Respondida: Image Analyst
el 24 de Jun. de 2022
The following is my code:(2x2 dataset imported from an excel file, 21 values for y and 21 values for x)
x=dataset1(:,1);
y=dataset1(:,2);
plot(x,y,'Marker','.','MarkerSize',20);
xlabel('Photon Energy(eV)')
ylabel('Harmonic Intensity(a.u.)')
axis square
I am getting this displayed:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1043860/image.png)
But I am trying to plot it like this:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1043865/image.png)
*I tried using the fit and lsqcurvefit but those only gave me best fit lines(unless I used them incorrectly). The closest thing I've got to was inputting S = x(:)\y(:), but that didn't give the same results as the figure.
It's my frist time using MATLAB, let alone programming. Any help would be appreciated.
1 comentario
Respuesta aceptada
Image Analyst
el 24 de Jun. de 2022
fitnlm in the Statistics and Machine Learning Toolbox, since 2013b, though you should probably upgrade your antique 8 year old version.
Even if you are working on one curve, you don't have enough data points to get a really good curve. The best you can do (or maybe not the best but ONE thing you can do) is to fit a spline through them with the spline function or interp1 function. Attached is a demo.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1044995/image.png)
0 comentarios
Más respuestas (1)
Image Analyst
el 24 de Jun. de 2022
I can see from what you did plot that there are not enough points in "dataset" to get the three colored curves that you are hoping to get. You'll need a lot more points.
But if you did, do you have a model for your curve? Perhaps an exponential decay times a cosine wave added to a downward ramp?
y = a1 * exp(a2 * x) .* cos(a3 * x) + a4 * x + a5;
If you have any more questions, then attach your data and code to read it in with the paperclip icon after you read this:
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!