我有嵌套for循环中生成的矩阵中的数据。我只想绘制满足特定条件的数据(例如,它必须大于0.6
)。数据点是否满足该条件,在我的mlist
矩阵中存储为1
或0
。Matlab绘制轮廓的指定条件的数据
什么是在Matlab中绘制这个最简单的方法?对于不符合条件的数据点,它可能只是空白区域。
xlist = linspace(-1,1,20);
ylist = linspace(-2,2,30);
zlist = zeros(length(xlist),length(ylist));
mlist = zeros(length(xlist),length(ylist));
% iteration counter
ii = 0;
jj = 0;
for x = xlist
ii = ii + 1;
for y = ylist
z = sin(x*y);
jj = jj + 1;
zlist(jj) = z;
if z > 0.6
mlist(jj) = 1;
else
mlist(jj) = 0;
end
end
end
contourf(ylist,xlist,zlist)
mesh(ylist,xlist,zlist)
我给这些值的'NaN',不妨一试。 –