举例:要绘制x^2+y^3=0的图像。
syms x y;
ezplot('x^2+y^3')
这里没问题。
我的问题是,x^2+y^3=0表达式是通过z(x,y)=x^2+y^3,令z=0得到的。如果要绘制z(x,y)=0的曲线,怎么绘制。
我用的方法是,在matlab里面输入z,然后把z的表达式复制到ezplot('')引号里面。但是这样就无法自动实现,不利编程。
关于符号函数绘图,可以有多种思路。第一种,可以用 ezplot ,可以直接画函数或者是隐函数;第二种,用符号函数产生数据点再画图。
对方法一举例如下:
clc;clear;
syms x y;
ezplot(sin(x))%画符号函数
figure
ezplot(x^2/4-y^2/4-1==0)%画隐函数
方法二举例:
clc;clear;
syms y(x);
y(x)=sin(x)
x=linspace(-pi,pi);
plot(x,eval(f(x)))
本视频展示如何用matlab绘制散圆状态图,可用于相关科研数据绘图!
问题在于:表达式z=x^2+y^2不是一开始就知道的。而是通过一系列符号运算得到的。那你的方法就不可用了啊。
换个问法:已知z(x,y),但不知z(x,y)的表达式。如何画z(x,y)=0。
我的方法是:在matlab里面输入z,然后可得z的表达式。在复制到ezplot('')引号里面。有没有好点的方法,可以自动获得。
我明白了。当你得到z(x,y)时,直接ezplot就行。比如
syms x y
z=x^3+y^2
ezplot(z)