matlab中如何将两条曲线画在同一幅图中

如题所述

1、首先打开matlab,随机产生三组范围不同的数据,数据量都为500,他们的边界分别为[10,15],[23,38],,[38,58]。方法如下:x1=10+5*rand(500,1);x2=23+15*rand(500,1);x3=38+20*rand(500,1);

2、下面再分别画出x1,x2,x3对应的曲线,用MATLAB的内置函数plot进行操作,分别用三个plot进行绘图,结果如下:plot(x1,'r');plot(x2,'b');plot(x3,'g');

3、可以看到,图中只有一条曲线,并没有其他两条曲线。这是因为后面plot的语句画的图会将前面plot画的图覆盖掉,因此需要用一个语句来保留前面所绘制的图,在需要保留的图的后面加一句hold on,即可将该图保留,使它不所覆盖,将三条曲线画在一张图上,为了区别,要分别给这三条曲线定义不同的颜色。

4、为了图的美观,可以用grid on添加网格线,还需要添加横纵坐标轴标题。方法如下:xlabel('样本序列');ylabel('值');

5、除此之外,因为画的是多条曲线,因此还需要添加图例,语法如下:legend('变量1','变量2','变量3'),括号里面按照画图的顺序分别写每条曲线代表的意义即可

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-11-21
如果是想把两条曲线画在同一坐标系里面,在画完第一个图的语句后加上
hold on
如果是想把两条曲线画在同一图片上而且是坐标系独立的,那么在画每个曲线之前使用subplot()语句,
subplot(1,1);
%%第一个曲线
subplot(1,2);
%%第二个曲线
这样本回答被网友采纳
第2个回答  2009-07-28
画完第一个,加上一句hold on,再画第二个
相似回答