一个函数中有两个变量,如何在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)?谢谢
展开
1个回答
展开全部
如何在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】
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询