我刚刚学习MATLAB,想画一下(x^2+y^2-1)^3=x^2*y^3这个曲线的图像,该怎么画呢,谢谢大家了。

2024-11-18 15:49:53
推荐回答(2个)
回答1:

二维的,当然是plot了。plot3是针对三维的,比如x,y,z。
对于你这个问题,我建议你首先将其进行变化,整理成y = f(x)的形式。若整理不成这种形式,那就只能整理为x = f(t),y = f(t),t为自变量的形式。
一 、对于y = f(x)
你可以在x的定义域范围内[a,b]取值
step = 0.1; %步长暂时设置为0.1,如果想画稀疏的点,步长可设大点,如果想画密一点的,可设小点。
x = a:step:b;
然后根据函数表达式y = f(x),计算相应的y的值。
最后
plot(x,y,'b.');就OK了。
二、对于x = f(t), y=f(t);
你可以在t的定义域范围内[a,b]取值
t = a:step:b;
然后根据函数表达式x = f(t), y=f(t);计算相应的x,y值
最后,可以画三维的,也可以画二维的。
plot(x,y,'b.');
或者
plot3(t,x,y,'b.'); %注意,这里是把t当做笛卡尔坐标系下的x,x当做y,y当做z处理的。

回答2:

这是个隐函数,matlab里有专门的画隐函数程序,叫“ezplot”
你试试这么写: ezplot('(x^2+y^2-1)^3=x^2*y^3')
图形是个心形的样子,如果没错的话