最小二乘法拟合平面的代码
%% 最小二乘法拟合平面
x = rand(1,10);
y = rand(1,10);
z = (3-2*x-5*y)/4;
Xcolv = x(:);
Ycolv = y(:);
Zcolv = z(:);
Const = ones(size(Xcolv));
Coefficients = [Xcolv Ycolv Const] \ Zcolv;
XCoeff = Coefficients(1);
YCoeff = Coefficients(2);
CCoeff = Coefficients(3);
L=plot3(x,y,z,'ro');
matlab自带的函数拟合平面的方法
%% 用matlab的regress命令进行平面拟合
x = [1 5 6 3 7]';
y = [2 9 3 5 8]';
z = [4 3 5 11 6]';
scatter3(x,y,z, 'filled');
X = [ones(5,1) x y];
% z = 6.5642 - 0.1269x - 0.0381y
b = regress(z, X);
xfit =