Этот пример показывает, как соответствовать полиномиальной кривой к набору точек данных с помощью функции 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)