[绘图] 双变量方程式绘图相关问题

楼主: a0981314780 (小宇)   2018-12-18 04:50:33
各位好。
小弟正在写论文,目前遇到需要绘图辅助的情况,
教授建议可以使用matlab,但之前从没碰过这软件,
自己上网查指令后是有画出图,不过没能完全解决需求,
所以来这边请教各位前辈 m(_ _)m
[前情提要]
需要判别下列双变量函数值z的正负。
z=32*x^3*y+3*y^4-16*x^4-8*x^2*y^2-8*x*y^3
(其中x,y皆>0且x>y)
[问题]
1. 有曾经成功画出来,但那是在x、y有限制值域的情况下 (例如:x属于[0,100])
指令的部分使用的是 x = linspace(0,100),
我查了之后发现这个,好像是用来把一定范围内的数分成n等分的间隔,
对我需要解决的问题好像不是很重要,可是拿掉上面那指令后它就跑不出来了。
#以下为跑不出来时用的指令及结果
>> syms x y
>> [xx,yy] = meshgrid(x,y)
>> zz = 32*xx.^3*yy.^1 + 3*yy.^4 - 16*xx.^4 - 8*xx.^2*yy.^2 - 8*xx.*yy.^3
>> mesh(xx,yy,zz)
Error using mesh (line 71)
Z must be a matrix, not a scalar or vector.
2. 需要一条y=x的45度辅助线,这部分该使用什么指令呢?
3. 因为最后我只是需要判断,z函数的值在怎样的x、y之下会为正、负或0,
所以是否有办法做到将z值投影到x、y的平面上,并且以线段区分?
(换句话说,就是在z=0的x、y平面上,以线段区分出各区块的正负)
我有发现一个等高线的指令(contour?),有成功用出但也不是想要的成果,
能否用指令设定等高线值=0之类的呢?
大概类似这张图的感觉(纯示意图):https://i.imgur.com/KMkkQMR.png
以上的问题麻烦各位解答了,先谢过各位前辈 qq
作者: sunev (Veritas)   2018-12-18 07:22:00
可以画成功为什么要改呢?你要用有限大的萤幕画没有长度限制的东西吗?所谓的画图就只是代数字而已喔
作者: profyang (prof)   2018-12-18 19:46:00
你要画到无限大?怎么可能?你电脑萤幕宽度无限宽吗?https://i.imgur.com/nZBY8hw.png 帮你画画 貌似=0是条直线 这条线以右好像都是你要的讲错了 这条线以左 x=y线以右 这样夹的三角区域 应该是你要的Code: https://i.imgur.com/Ckp18VM.png

Links booklink

Contact Us: admin [ a t ] ucptt.com