matlab 同个坐标下的两个函数图像的比较

matlab 同个坐标下的两个函数图像的比较




clc;
close all;% 这句可以不要
clear all;
 
funtool;% 这句可以在其他地方调用
 
figs = findobj( 0,  'Type' 'figure'  ); %找到当前所有figure句柄
 
% 确定figure1和figure2,原理是figure3有不止一个children
if  length( get( figs( 1 ),  'Children'  ) ) > 1
     fig1 = figs( 3 );
     fig2 = figs( 2 );
elseif length( get( figs( 2 ),  'Children'  ) ) > 1
     fig1 = figs( 3 );
     fig2 = figs( 1 );
else
     fig1 = figs( 2 );
     fig2 = figs( 1 );
end
 
% 新建一个figure和坐标系,用于画这两条曲线
fig4 = figure( 4 );
ha = axes(  'Parent' , fig4 );
hold on;
 
% figure1和figure2都只有一个坐标系,且坐标系里只有一条line对象,从line对象里挖掘出曲线的坐标点信息
line1 = get( get( fig1,  'children'  ),  'children'  );
x1 = get( line1,  'XData'  );
y1 = get( line1,  'YData'  );
 
line2 = get( get( fig2,  'children'  ),  'children'  );
x2 = get( line2,  'XData'  );
y2 = get( line2,  'YData'  );
 
% 分别用不同的颜色画两条曲线
plot( ha, x1, y1,  'r'  );
plot( ha, x2, y2,  'g'  );

matlab 同个坐标下的两个函数图像的比较_第1张图片

你可能感兴趣的:(Matlab)