Полиномиальное аппроксимирование кривыми

Этот пример показывает, как соответствовать полиномиальной кривой к набору точек данных с помощью функции polyfit. Можно использовать polyfit, чтобы найти коэффициенты многочлена, который приспосабливает набор данных в смысле наименьших квадратов с помощью синтаксиса

p = polyfit(x,y,n),

где:

  • x и y являются векторами, содержащими x и координаты y точек данных

  • n является градусом многочлена, чтобы соответствовать

Создайте некоторые x-y тестовые данные для пяти точек данных.

x = [1 2 3 4 5]; 
y = [5.5 43.1 128 290.7 498.4];

Используйте polyfit, чтобы найти многочлен третьей степени, который приблизительно соответствует данным.

p = polyfit(x,y,3)
p = 1×4

   -0.1917   31.5821  -60.3262   35.3400

После того, как вы получаете многочлен для подходящей строки с помощью polyfit, можно использовать polyval, чтобы оценить многочлен в других точках, которые не могут быть включены в исходные данные.

Вычислите значения оценки polyfit по более прекрасной области и постройте график оценки по действительным значениям данных для сравнения. Включайте аннотацию уравнения для подходящей строки.

x2 = 1:.1:5;
y2 = polyval(p,x2);
plot(x,y,'o',x2,y2)
grid on
s = sprintf('y = (%.1f) x^3 + (%.1f) x^2 + (%.1f) x + (%.1f)',p(1),p(2),p(3),p(4));
text(2,400,s)

Смотрите также

|

Похожие темы

Была ли эта тема полезной?