24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1926  |  回复: 5

穆灬图

铁虫 (初入文坛)

[求助] 一个函数用matlab画出的图像有好几条,怎么只画出其中的一条已有1人参与

我是MATLAB小白,昨天刚开始学习这款软件,遇到了这个问题不会解决,请大神们帮帮忙。
已知函数sin(y)+y*cos(y*x)*cos(y*(1-x))=0,我想画出x-y图像,编程为:
clc
clear
syms y x
f1=sin(y)+y*cos(y*x)*cos(y*(1-x))
ezplot(f1,[0,1,0,20])
得出的函数图像如下(不知道图像上传了没有),图像里可看出y有好几条图像,分别对应了不同阶的y值。我想让图像里只有一条y的图像,比如只画出一阶y与x的图像,或二阶y与x的图像,要怎么通过MATLAB 实现,具体怎么编程,请大神指导。http://一个函数用matlab画出的图像有好几条,怎么只画出其中的一条

一个函数用matlab画出的图像有好几条,怎么只画出其中的一条-1
112.jpg
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

somomo91

专家顾问 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
穆灬图: 金币+6, 有帮助 2017-06-08 17:24:12
你直接用 ezplot,得到的必然是二维图
如果你想得到 x-y 的关系,那么最好好是解一下你的方程。
CODE:
eqn = sin(y)+y*cos(y*x)*cos(y*(1-x))==0
ysol = solve(eqn,x)

然后用得到的解来画图,需要注意的是,这里的ysol 有四个解,
2楼2017-06-08 03:34:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

穆灬图

铁虫 (初入文坛)

引用回帖:
2楼: Originally posted by somomo91 at 2017-06-08 03:34:39
你直接用 ezplot,得到的必然是二维图
如果你想得到 x-y 的关系,那么最好好是解一下你的方程。
eqn = sin(y)+y*cos(y*x)*cos(y*(1-x))==0
ysol = solve(eqn,x)
然后用得到的解来画图,需要注意的是,这里的yso ...

ysol = solve(eqn,x) 里写的x,这是把x解成关于y的表达式了吧,而且4个表达式一样的。这些先不管,就当解出ysol没毛病,那接下来怎么画图呢,我试了几种都是一堆的错误
3楼2017-06-08 04:21:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

somomo91

专家顾问 (职业作家)

引用回帖:
3楼: Originally posted by 穆灬图 at 2017-06-08 04:21:14
ysol = solve(eqn,x) 里写的x,这是把x解成关于y的表达式了吧,而且4个表达式一样的。这些先不管,就当解出ysol没毛病,那接下来怎么画图呢,我试了几种都是一堆的错误...

四个结果不一样的,正负号不一样
4楼2017-06-08 06:30:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

穆灬图

铁虫 (初入文坛)

引用回帖:
4楼: Originally posted by somomo91 at 2017-06-08 06:30:46
四个结果不一样的,正负号不一样...

我想画出图像验证一下,但是在求出ysol 后要怎么用它的结果画图呢,我试了ezplot(ysol,y),ezplot(ysol),plot(ysol,y)等多种写法,都会出现很多错误
5楼2017-06-08 06:56:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

somomo91

专家顾问 (职业作家)

引用回帖:
5楼: Originally posted by 穆灬图 at 2017-06-08 06:56:19
我想画出图像验证一下,但是在求出ysol 后要怎么用它的结果画图呢,我试了ezplot(ysol,y),ezplot(ysol),plot(ysol,y)等多种写法,都会出现很多错误...

结果本身是 symbolic ,你得 evaluate 这个字符串,
看下 Symbolic 工具箱的 基础介绍
6楼2017-06-08 15:37:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 穆灬图 的主题更新
信息提示
请填处理意见