Q=[1.05 1.18 1.29 1.30 1.30 1.42 1.50 1.52 1.46 1.60 1.69 1.81 1.93 1.95 2.01 2.00 2.09 1.96 2.20 2.12 2.16 2.08 2.24 2.56 2.34 2.45 2.58]';
y=log(Q);
K=[1.04 1.06 1.16 1.22 1.27 1.37 1.44 1.53 1.57 2.05 2.51 2.63 2.74 2.82 3.24 3.24 3.61 4.10 4.36 4.77 4.75 4.54 4.54 4.58 4.58 4.58 4.54]';
x1=log(K);
L=[1.05 1.08 1.18 1.22 1.17 1.30 1.39 1.47 1.31 1.43 1.58 1.59 1.66 1.68 1.65 1.62 1.86 1.93 1.96 1.95 1.90 1.58 1.67 1.82 1.60 1.61 1.64]';
x2=log(L);
x=[ones(size(y)),x1,x2];
[b,bint,r,rint,stats] = regress(y,x);
a=exp(b(1));alpha=b(2);beta=b(3);
R=stats(1);
% % %Plot the data and the model.% % %
scatter3(x1,x2,y,'filled'); %scatter3函数用于画三维散点图
hold on;
x1fit = min(x1):0.05:max(x1);
x2fit = min(x2):0.05:max(x2);
[X1FIT,X2FIT] = meshgrid(x1fit,x2fit);%meshgrid用于画曲面图
YFIT = b(1) + b(2)*X1FIT + b(3)*X2FIT ;
mesh(X1FIT,X2FIT,YFIT);
title("LnQ=Lna+\alphaLnK+\betaLnL");
xlabel('LnK');
ylabel('LnL');
zlabel('LnQ');
view(50,10);
hold off;
% % %Plot the data and the model.% % %
figure(2);
x1=exp(x1);
x2=exp(x2);
y=exp(y);
scatter3(x1,x2,y,'filled');
hold on;
x1fit = min(x1):0.05:max(x1);
x2fit = min(x2):0.05:max(x2);
[X1FIT,X2FIT] = meshgrid(x1fit,x2fit);
YFIT = a*(X1FIT.^alpha).*(X2FIT.^beta);
mesh(X1FIT,X2FIT,YFIT);
title("Q=aK^{\alpha}L^{\beta}");
xlabel('K');
ylabel('L');
zlabel('Q');
view(50,20);%view函数用于调整我们看三维图形的视角
hold off;