怎样在matlab中将两个图画在同一个坐标轴中

程序1:clearR1=8*10^(-3);C1=1500;I=10;r=1.5;t=[0:100:400];A=-R1*r^4*(r-1)^2*(r^2+r+1)/((r^4+r^2+1)^2*(r+1));B=-t.*(r^4+r^2+1)*(r+1)/(R1*C1*(r^2+r+1)*(r^2+1));C=(R1*r^8*(r+1)+R1*r^2*(r^2+1)^2)/((r+1)*(r^4+r^2+1));D=t*r^4/(C1*(r^4+r^2+1));E=2.718.^B;V1=I.*(A.*E+C+D);plot(t,V1)得到的图像为图1:

程序2:
clearR1=8*10^(-3);C1=1500;I=10;r=1.5;T=[400:10:1000];A=-R1*r^4*(r-1)^2*(r^2+r+1)/((r^4+r^2+1)^2*(r+1));B=-T.*(r^4+r^2+1)*(r+1)/(R1*C1*(r^2+r+1)*(r^2+1));C=(R1*r^8*(r+1)+R1*r^2*(r^2+1)^2)/((r+1)*(r^4+r^2+1));D=400*r^4/(C1*(r^4+r^2+1));E=2.718.^B;F=-(T-400).*(r^4+r^2+1)*(r+1)/(R1*C1*(r^2+r+1)*(r^2+1));G=2.718.^F;V2=I.*(A.*E-A.*G+D);plot(T,V2)得到的图为图2:

图1中X轴的终点就是图2中X轴的起点,我想把两个图弄到同一个坐标系中。请问该怎样弄啊?两个图X轴上两点间的间距不一样啊。

一般来讲有以下三种方法:

1、使用hold on语句,hold on说明当前画图结束后,告诉计算机我还需要往这个图上添加东西,再次使用plot画图即可实现。

2、用.m文件函数:
例如:function y=myfun(x)
y(:,1)=sin(x);
y(:,2)=cos(x);
y(:,3)=x^(1/2)-1;
然后调用:fplot('myfun',[0 2*pi])即可实现三个函数图像出现在同一个坐标轴中。

3、或者直接: fplot('[sin(x),cos(x),sqrt(x)-1]',[0 2*pi])将函数卸载fplot的三个参数中
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-11-08
clear
R1=8*10^(-3);
C1=1500;
I=10;
r=1.5;
t=[0:100:400];
A=-R1*r^4*(r-1)^2*(r^2+r+1)/((r^4+r^2+1)^2*(r+1));
B=-t.*(r^4+r^2+1)*(r+1)/(R1*C1*(r^2+r+1)*(r^2+1));
C=(R1*r^8*(r+1)+R1*r^2*(r^2+1)^2)/((r+1)*(r^4+r^2+1));
D=t*r^4/(C1*(r^4+r^2+1));
E=2.718.^B;
V1=I.*(A.*E+C+D);
plot(t,V1)

hold on; %%% 增添hold on 命令即可

clear
R1=8*10^(-3);
C1=1500;
I=10;
r=1.5;
T=[400:10:1000];
A=-R1*r^4*(r-1)^2*(r^2+r+1)/((r^4+r^2+1)^2*(r+1));
B=-T.*(r^4+r^2+1)*(r+1)/(R1*C1*(r^2+r+1)*(r^2+1));
C=(R1*r^8*(r+1)+R1*r^2*(r^2+1)^2)/((r+1)*(r^4+r^2+1));
D=400*r^4/(C1*(r^4+r^2+1));
E=2.718.^B;
F=-(T-400).*(r^4+r^2+1)*(r+1)/(R1*C1*(r^2+r+1)*(r^2+1));
G=2.718.^F;
V2=I.*(A.*E-A.*G+D);
plot(T,V2)本回答被提问者采纳
第2个回答  2020-12-09

本视频展示如何用matlab绘制散圆状态图,可用于相关科研数据绘图!

第3个回答  2012-07-09
使用hold on/off指令,可以实现重复绘图。
相似回答