一个函数中有两个变量,如何在matlab上生成使得函数恒大于0时两个变量取值范围的临界线图形?谢谢

一个函数中有两个变量,两个变量有初始的给定范围,想用图形来表示两个变量在什么样的取值范围内能使得函数的值恒大于0(比如z=x+y≥10,x的给定范围是x≥3,y的给定范围... 一个函数中有两个变量,两个变量有初始的给定范围,想用图形来表示两个变量在什么样的取值范围内能使得函数的值恒大于0(比如z=x+y≥10,x的给定范围是x≥3,y的给定范围是y≥1)如何在matlab上生成这两个变量取值范围的临界线图形(二维图形,横纵坐标分别是x,y)?谢谢 展开
 我来答
lhmhz
高粉答主

2021-02-14 · 专注matlab等在各领域中的应用。
lhmhz
采纳数:7264 获赞数:17014

向TA提问 私信TA
展开全部

如何在matlab上生成这两个变量取值范围的临界线图形(二维图形,横纵坐标分别是x,y)?

根据题主给的函数z=x+y≥10,其中x≥3,y≥1为例,说明求解过程:

第一步,分别对x、y进行赋值,且满足已知条件,即

x=linspace(3,50,100); %【3,50】

y=linspace(1,50,100); %【1,50】

第二步,对x、y进行网格化,即

[x,y]=meshgrid(x,y);

第三步,利用双for循环语句和if判断语句,取出满足

z=x+y≥10 的x、y值

第四步,使用plot3绘图函数,用红色的*表示x、y、z值,即

plot3(x1,y1,z1,'r*')

第五步,标注x、y、z的坐标轴名称,即

xlabel('x');ylabel('y');zlabel('z');

第六步,使用view函数来确定三维图显示位置,即

view(90,90) %显示x、y的临界线图形

完善代码后运行得到如下图形。

追问
非常感谢!如果想对红色区域填充成一个密闭图形(填充掉中间的白色空隙),怎么实现呢?
追答
你可以将x,y的区间份数100改1000,或更大。
x=linspace(3,50,1000); %【3,50】
y=linspace(1,50,1000); %【1,50】
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式