Polyfit and polyval in Matlab
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hi!I have a problem with polyfit and polyval. I have two vectors (x and y). You can see it in the attached image (the red line). I want to create a polynom that allow to create the blue line (imagine that it doesn't exist) only with the values that I have.
I've tried with polyfit and polyfit but it doesn't work at all.
x2=x'; %I have changed the direction because if not, it doesn't do the polyfit.
coeffs1=polyfit(x2, msensiv_graf,1);
coeffs3=polyfit(x2, msensiv_graf,3);
coeffs5=polyfit(x2, msensiv_graf,5);
coeffs12=polyfit(x2, msensiv_graf,12);
new_y1 = polyval(coeffs1, x2);
new_y3 = polyval(coeffs3, x2);
new_y5 = polyval(coeffs5, x2);
new_y12 = polyval(coeffs12, x2);
plot(x2, msensiv_graf, 'r');
hold on
plot(x2, new_y1, 'r');
plot(x2, new_y3, 'b');
plot(x2, new_y5, 'g');
plot(x2, new_y12, 'y');
And the error is:
Warning: Polynomial is badly conditioned. Add points with distinct X values, reduce the degree of the polynomial, or try centering and scaling as described in HELP POLYFIT.
Does somebody know what can I do? I also think to try interpolation to get the blue line.
Thanks a lot in advance.
0 comentarios
Respuesta aceptada
Image Analyst
el 13 de Ag. de 2012
Editada: Image Analyst
el 13 de Ag. de 2012
Try using the S and mu outputs of polyfit(), like it (almost) says. I once had the same error and that helped me. Just get them and pass them into polyval() - it was as simple as that.
6 comentarios
Image Analyst
el 23 de Ag. de 2012
Did you read my prior comment about supplying input data we can work with?
Más respuestas (0)
Ver también
Categorías
Más información sobre Interpolation 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!