用MATLAB绘制球:x^2+y^2+z^2=1和平面:y+z=1,要求绘制在同一坐标轴上

我先绘制了球,程序如下:

t=0:0.01:2*pi;
p=0:0.01:2*pi;
[theta,phi]=meshgrid(t,p);
x1=sin(theta).*sin(phi);
y1=sin(theta).*cos(phi);
z1=cos(theta);
mesh(x1,y1,z1)
axis equal
hold on
然后再继续用mesh函数绘制平面为什么绘制出来的图形不对啊。。。还是只有一个球,只是颜色有点变化

继续画就可以了,可能你的画法不对,试试这个:
[x2, y2] = meshgrid(-1:0.01:1);
z2 = 1 - y2;
mesh(x2, y2, z2);
如果你不希望颜色有变化,也可以自己控制画图的颜色。
相关的资料可以网上搜或参考 mesh 的说明,里面也有例子:
doc mesh
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-04-19
>> [x2,y2]=meshgrid([-1:0.05:1]);
>> z2=1-y2;
>> mesh(x2,y2,z2)本回答被网友采纳
相似回答