请问画三维曲面图时,​如果自变量的区间边界​是一个函数怎么办?

조회 수: 9 (최근 30일)
com li
com li 2020년 3월 30일
답변: Rik 2020년 3월 30일
例如,用surf(X,Y,Z)画函数z(x,y)=x+y的三维曲面图,在XOY平面的范围是x=1,y=0,x=y围成的三角形区域,该怎么办?

채택된 답변

Rik
Rik 2020년 3월 30일
Use meshgrid or ndgrid to generate a full grid of coordinates. Then you mark all points outside your triangle with inpolygon. The surf function will ignore NaN values, so that is good choice.
You can make the grid as fine as you need it to be.
[X,Y]=ndgrid(linspace(0,1,50));
Z=X+Y;
%define the triangle here
xv=[0 1 1];
yv=[0 0 1];
L=inpolygon(X,Y,xv,yv);
X(~L)=NaN;
Y(~L)=NaN;
Z(~L)=NaN;
surf(X,Y,Z)

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 NaNs에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!