MATLAB for循环每循环一次产生一条曲线,怎么画出每条曲线?

大概是这样的一个问题:先有一个for循环依次增加Y坐标的初始值Y(1),每一个特定的Y(1)都再由递推函数可以依次求出Y(2),Y(3),Y(4)......这样就得到一... 大概是这样的一个问题:先有一个for循环依次增加Y坐标的初始值Y(1),每一个特定的Y(1)都再由递推函数可以依次求出Y(2),Y(3),Y(4)......这样就得到一条曲线的所有纵坐标的值。
for Y(1)=-3.5:0.5:3.5
for i=2:n
Y(i+1)=f(Y(i)) %循环里面依次算出各个Y(i)
end
plot(X,???)%这里就不知道怎么写了。。横坐标信息在矩阵X里面
end
如果就一条曲线那就是plot(X,Y)咯,可现在由于Y(1)取不同的值可以得到多条曲线,想把每条曲线都画出来该怎么写呢?最好所有是都在一张图里,实在不行分开画也可以~
可能我没表达清楚意思,我要实现这样一个过程:先确定一条曲线的第一个点的纵坐标,由这个值递推出曲线上其他点的纵坐标,从而画出整条曲线;然后改变第一个点的纵坐标,然后递推出曲线上其他点的纵坐标,得到新曲线;然后继续改,最后想画出所有曲线~
展开
 我来答
路确实脚下
推荐于2017-09-21 · TA获得超过1021个赞
知道小有建树答主
回答量:452
采纳率:100%
帮助的人:468万
展开全部
MATLAB绘制曲线的函数为plot().
for循环中每次循环画一条曲线,需要在for语句中,添加hold on语句。
这样做的目的是为了保持每次循环画一条曲线,N次循环画出N条曲线。
手机用户30914
2011-09-24 · TA获得超过244个赞
知道答主
回答量:525
采纳率:0%
帮助的人:160万
展开全部
A=[];
for i=1:10 %A1至A10
eval(['A',num2str(i),'=','rand(2,5)']); %A1至A10都是2行五列的矩阵,这个要改成你想要的
eval(['A=[A;A',num2str(i),'];']); %组合A=[A1;A2;A3;...]
end
追问
额。。。不太会用。。我觉得我的问题没有那么复杂,就是一个现象由它的初始值影响,我想取不同的初始值得到现象的多条曲线,因为是用for循环改变初始值,所以不知道怎么把画曲线的plot功能嵌入for循环里让它画出来~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dbb627
推荐于2017-09-23 · TA获得超过1.2万个赞
知道大有可为答主
回答量:2127
采纳率:88%
帮助的人:1358万
展开全部
不太清楚你的程序具体怎样 如果前面没问题 只是画图 可以这样改
for Y1=-3.5:0.5:3.5
for i=1:length(Y1)
Y(i)=f(Y1(i)) %循环里面依次算出各个Y(i)
end
plot(X,Y(i))%这里就不知道怎么写了。。横坐标信息在矩阵X里面
hold on
end
更多追问追答
追问
感觉plot(X,Y(i))不大对额。。关键应该在于怎么描述当Y(1)不同时得到的不同曲线,Y(i)是矩阵Y中一个具体的点的纵坐标,而不是整条曲线的纵坐标集合矩阵,我突然觉得整条曲线的纵坐标在矩阵Y里,会不会就是plot(X,Y);hold on;?
追答
这要看你的f函数的形式是怎么样的,来确定
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式