matlab画三维曲面
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/11 03:42:21
matlab画三维曲面
已知 数组 X=[1,2]; 数组Y=[1,2,3,4]; 数组Z 是:Z=X.Y=[1*1,1*2,1*3,1*4,2*1,2*2,2*3,2*4],这也相当于有8个点 (x,y,z)
(1,1,1*1),
(1,2,1*2),
(1,3,1*3),
(1,4,1*4),
(2,1,2*1),
(2,2,2*2),
(2,3,2*3),
(2,4,2*4),
怎么用matlab编程画这8个点的三维的图阿?本人是新手,求大侠帮帮忙.
已知 数组 X=[1,2]; 数组Y=[1,2,3,4]; 数组Z 是:Z=X.Y=[1*1,1*2,1*3,1*4,2*1,2*2,2*3,2*4],这也相当于有8个点 (x,y,z)
(1,1,1*1),
(1,2,1*2),
(1,3,1*3),
(1,4,1*4),
(2,1,2*1),
(2,2,2*2),
(2,3,2*3),
(2,4,2*4),
怎么用matlab编程画这8个点的三维的图阿?本人是新手,求大侠帮帮忙.
x=[1,2];
y=[1,2,3,4];
y=y';
z=kron(x,y);
mesh(x,y,z);%看看help就知道这个函数怎么用了
再问: Thank you!!其实Z是一个半径为1的球的z坐标。已知 数组 X=[0.1,0.2]; 数组Y=[0.1,0.2,0.3,0.4]; 数组Z 是:Z=sqrt(1-X(I)^2-Y(J)^2)。 x=[0.1,0.2]; y=[0.1,0.2,0.3,0.4]; p=1; for i=1:2 for j=1:4 z(p)=sqrt(1-x(i)^2-y(j)^2); p=p+1; end end [X,Y]=meshgrid(x,y); mesh (X,Y,z) 为什么出错呢???我现在的课题需要显示这8个点,在半径为1的上半球面上。楼主能否帮忙解答。。。。。非常非常感谢。。。
再答: mesh的三个参数的size要统一,你的程序z的是1*8的,应该写成2*4的,这样才可以画出来。我也不会标那个东西,但是手动作了一个,就是在四分之一球面上标了出来。高手见笑了。球也没画好,就是不知道其他区域怎么就是0了。x=0:0.01:1;y=0:0.01:1;for i=1:length(x) for j = 1:length(y) if 1-x(i)^2-y(j)^2<0 z(i,j)=0; else z(i,j)=abs(sqrt(1-x(i)^2-y(j)^2)); end endendmesh(x,y,z)
y=[1,2,3,4];
y=y';
z=kron(x,y);
mesh(x,y,z);%看看help就知道这个函数怎么用了
再问: Thank you!!其实Z是一个半径为1的球的z坐标。已知 数组 X=[0.1,0.2]; 数组Y=[0.1,0.2,0.3,0.4]; 数组Z 是:Z=sqrt(1-X(I)^2-Y(J)^2)。 x=[0.1,0.2]; y=[0.1,0.2,0.3,0.4]; p=1; for i=1:2 for j=1:4 z(p)=sqrt(1-x(i)^2-y(j)^2); p=p+1; end end [X,Y]=meshgrid(x,y); mesh (X,Y,z) 为什么出错呢???我现在的课题需要显示这8个点,在半径为1的上半球面上。楼主能否帮忙解答。。。。。非常非常感谢。。。
再答: mesh的三个参数的size要统一,你的程序z的是1*8的,应该写成2*4的,这样才可以画出来。我也不会标那个东西,但是手动作了一个,就是在四分之一球面上标了出来。高手见笑了。球也没画好,就是不知道其他区域怎么就是0了。x=0:0.01:1;y=0:0.01:1;for i=1:length(x) for j = 1:length(y) if 1-x(i)^2-y(j)^2<0 z(i,j)=0; else z(i,j)=abs(sqrt(1-x(i)^2-y(j)^2)); end endendmesh(x,y,z)