matlab - 用冲浪在3d中绘制不平等

时间:2014-04-07 01:07:38

标签: matlab 3d plot

我想使用surf在3d中绘制不等式。我的病情是

0<=x<=1    
0<=y<=1    
0<=z<=x/(1+y)

我可以使用以下命令

创建曲面图
[x y]=meshgrid(0:0.01:1);    
z=x./(1+y);    
surf(x,y,z);

此图为我提供z=x/(1+y)区域,但我对0<=z<=x/(1+y)所有xy值的区域感兴趣。但是,我无法明确地绘制/着色该区域。你能帮忙吗?

已经问过类似的question,但是没有可接受的答案,我的问题也不同。

1 个答案:

答案 0 :(得分:2)

使用isosurface可以显示边界。有两个选项,首先创建点

[X,Y,Z]=meshgrid(0:.01:1);

然后在z方向绘制边界(即Z=0Z=X./(1+Y)

isosurface(X,Y,Z,Z.*(X./(1+Y)-Z),0)

或绘制所有边界(包括X=0X=1Y=0Y=1

isosurface(X,Y,Z,Z.*(X./(1+Y)-Z).*X.*(X-1).*Y.*(Y-1),0)

你所要做的就是想出一个在任何边界上都是常数的函数,只要它不是零,它的内部或外部值就无关紧要。