matlab处理数据一定是矩形,虽然有些计算出来的数据可能是三角的范围,但同样要将三角的范围数据变为矩形的数组才能处理,这太麻烦了。比较简单的方法是将矩形范围的数据剪裁出来,满足三角范围的数据保留,矩形范围内的其它数据设为NaN,这样可以很容易进行下一步的处理。
clear all
[X,Y] = meshgrid(0:.0625:1,-1:.0625:1);%设定矩形区域xy范围,根据你这题的要求主要目的是设置x范围
Z = peaks(X,Y);%生成数据z
figure(1) %将不在三角范围的数赋值为NaN figure(2)
mesh(X,Y,Z);
Y1=Y.*(Y>0&Y
Y1(Y1(:)==0)=NaN;
X1(X1(:)==0)=NaN;
Z1(Z1(:)==0)=NaN;
mesh(X1,Y1,Z1);