我使用fimplicit命令来生成图形,但是我的条件是x + y <= 1,我只希望显示图形的那个区域。
示例:f = @(x,y) x.^2 + y.^2 - 3; fimplicit(f,[-3 3 -2 2])
如果在隐含的内容中没有这样的选项,我也会在绘制隐藏的内容后提出修改数字的建议。 PS。当然,我的功能不是上面那个,它很复杂,所以我认为在这篇文章中使用一个简单的例子是有用的。顺便说一句,简单地将-3和-2更改为0以及将3和2更改为1将不适用于我的原始函数。或者,对我的情况有用的是将图形绘制为白色,以显示我不可见的部分,例如x + y&gt; = 1,但我不知道该怎么做。
答案 0 :(得分:1)
如果使用通常的函数句柄代替匿名函数句柄,您将可以更好地控制该函数的输出值。在单独的.m
文件中创建此函数:
function val = fun(x, y)
val = x.^2 + y.^2 - 3;
val(x+y>1) = NaN;
end
并称之为:
fimplicit(@fun, [-3 3 -2 2])
答案 1 :(得分:0)
我终于使用patch
命令解决了我的问题。
我只是为我不想看到的区域绘制一个多边形,然后选择填充颜色为白色。下面,我为x + y大于1的值绘制一个三角形,并将它们填充为白色。
v = [0 1; 1 0; 1 1];
f = [1 2 3];
patch('Faces',f,'Vertices',v,'FaceColor','white')