在MATLAB中polyfit函式是用來進行多項式擬合的。其數學原理是基於最小二乘法進行擬合的。具體使用語法是:
p = polyfit(x,y,n);
% 其中x,y表示需要擬合的座標點,大小需要一樣; n表示多項式擬合的次數。
% 返回值p表示多項式擬合的係數,係數從高到低排列
具體用法示例:
1、使用polyfit函式擬合一次多項式,示例:
%% polyfit函式的使用
clear; clc; close all;
% 原始資料
x = 1:20;
y = [1,12,23,46,78,98,100,123,160,210,230,270,292,350,346,386,438,349,460,512];
p = polyfit(x,y,1); % 進行擬合
y1 = x*p(1)+p(2); % 生成表示式,計算y的值
figure; % 繪圖
scatter(x,y,".");
hold on;
plot(x,y1,"Color","r");
% 新增說明
xlabel("x");ylabel("y");title("自己構建表示式");
legend("原始資料","擬合直線");
在MATLAB中polyfit函式是用來進行多項式擬合的。其數學原理是基於最小二乘法進行擬合的。具體使用語法是:
p = polyfit(x,y,n);
% 其中x,y表示需要擬合的座標點,大小需要一樣; n表示多項式擬合的次數。
% 返回值p表示多項式擬合的係數,係數從高到低排列
具體用法示例:
1、使用polyfit函式擬合一次多項式,示例:
%% polyfit函式的使用
clear; clc; close all;
% 原始資料
x = 1:20;
y = [1,12,23,46,78,98,100,123,160,210,230,270,292,350,346,386,438,349,460,512];
p = polyfit(x,y,1); % 進行擬合
y1 = x*p(1)+p(2); % 生成表示式,計算y的值
figure; % 繪圖
scatter(x,y,".");
hold on;
plot(x,y1,"Color","r");
% 新增說明
xlabel("x");ylabel("y");title("自己構建表示式");
legend("原始資料","擬合直線");