matlab中怎么把几个函数图像画在一个指定的窗口,并且显示他们相交区域
不管你用什么画图命令, 二维的plot也好, 三维的surf 、mesh也好,只要执行hold on命令就可以画在同个figure里面。
clear;clc; close all
a=-2:0.05:2;
b=-2:0.05:2;
%给出a,b就确定了一个矩形平面
[x,y]=meshgrid(a,b);
z1=x.^2+y.^2;
mesh(x,y,z1);%抛物面z=x^2+y^2;
hold on
z2=1-x-y;
mesh(x,y,z2);%平面x+y+z=1
点击“手” 旁边的旋转箭头按钮,可以旋转图像观察
如果你还要显示相交的矩形区域,用下面的代码:
clear;clc; close all
a=-2:0.05:2;
b=-2:0.05:2;
%给出a,b就确定了整个矩形区域
[x,y]=meshgrid(a,b);
%抛物面z=x^2+y^2
z1=x.^2+y.^2;
figure;
mesh(x,y,z1);
hold on
%平面x+y+z=1
z2=1-x-y;
mesh(x,y,z2);
figure;
[m n]=size(z1);
c=1;
for i=1:m
for j=1:n
if(z1(i,j)<z2(i,j))
x3(c)=x(i,j);
y3(c)=y(i,j);
z3(c)=z2(i,j);
c=c+1;
end
end
end
plot3(x3,y3,z3)%显示相交的矩形平面
zlim([-4,8])
grid on