matlab中,同一图形怎么画两条曲线

2024年11月12日 01:17
有5个网友回答
网友(1):

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、为了图的美观,可以用gridon添加网格线,还需要添加横纵坐标轴标题。方法如下:xlabel('样本序列');ylabel('值');

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

扩展资料:

利用holdon命名即可实现在同一图形中绘制多条曲线或利用绘图命令一次绘制多条曲线。

holdon就是将figure中的图形保存,之后再通过绘图命令绘制下一条曲线,使多条曲线同时显示在一个图形之中。

具体实现方法可以参考如下程序段:

t=-5:0.01:5;

x=sin(t);

y=cos(t);

plot(t,x);//绘制正弦曲线。

holdon;//将正弦曲线保持在图形中。

plot(t,y);//绘制余弦曲线,完成后图形中就会同时显示正弦曲线和余弦曲线。

plot(t,x,t,y);//同时绘制正弦曲线和余弦曲线,该方法也是在图形中同时显示正弦曲线和余弦曲线。

网友(2):

利用hold on命名即可实现在同一图形中绘制多条曲线或利用绘图命令一次绘制多条曲线。

hold on就是将figure中的图形保存,之后再通过绘图命令绘制下一条曲线,使多条曲线同时显示在一个图形之中。


具体实现方法可以参考如下程序段:

t = -5 : 0.01 : 5;
x = sin(t);
y = cos(t);
plot(t, x);  // 绘制正弦曲线
hold on;  // 将正弦曲线保持在图形中
plot(t, y);  // 绘制余弦曲线,完成后图形中就会同时显示正弦曲线和余弦曲线
plot(t,x, t,y);  // 同时绘制正弦曲线和余弦曲线,该方法也是在图形中同时显示正弦曲线和余弦曲线

网友(3):

1.在两个plot之间,加一个hold on语句
2.例如:plot(x1,y1,'r',x2,y2,'b')
3.plotyy:绘制双纵坐标图。调用格式 plotyy(X1,Y1,X2,Y2):
4.subplot :同一窗口下划分几个子窗口绘制图形。
大概就这么多。

网友(4):

eg.
x1=1:100;
x2=1:100;
y1=cos(x1);
y2=sin(x2);
plot(x1 y1 x2 y2)

网友(5):

在两个plot之间,加一个hold on语句