叠像术的matlab实现,matlab作图(子图+图像重叠显示)

1、matlab中如何在一个图上显示多个图像,例如同时显示2*2个图像,则需使用subplot(m,n,p)命令,其中m和n表示m行n列,p表示第几个图像

例:在一个图上显示函数 y = exp(-0.5*x)*sin(20*x)

y = exp(-1.2*x)*sin(20*x)

y = exp(-2*x)*sin(20*x)

y = exp(-2.5*x)*sin(20*x)

代码为:

x = [0:0.01:5];

y = exp(-0.5*x).*sin(20*x);

subplot(2,2,1);

plot(x,y),xlabel('x'),ylabel('exp(-0.5*x).*sin(20*x)'),axis([0 5 -1 1]);

y = exp(-1.2*x).*sin(20*x);

subplot(2,2,2);

plot(x,y),xlabel('x'),ylabel('exp(-1.2*x).*sin(20*x)'),axis([0 5 -1 1]);

y = exp(-2*x).*sin(20*x);

subplot(2,2,3);

plot(x,y),xlabel('x'),ylabel('exp(-2*x).*sin(20*x)'),axis([0 5 -1 1]);

y = exp(-2.5*x).*sin(20*x);

subplot(2,2,4);

plot(x,y),xlabel('x'),ylabel('exp(-2.5*x).*sin(20*x)'),axis([0 5 -1 1]);

以上代码也可以使用循环语句来实现。

2、图像重叠显示,可使用hold on命令实现,另外可以使用linspace(a,b)或linspace(a,b,n)命令实现在a到b之间均匀地取出100个点或n个点。

例如在0到2*pi之间均匀地取出100个点可用 x = linspace(0, 2*pi) 实现。

例:用下面命令实现在一个图形上绘制cos(x)的同时再绘制上sin(x)

fplot(@(x)cos(x), [0 2*pi]), axis([-1 1 0 2*pi])      %或者用 x = linspace(0,2*pi);

hold on                      %    plot(x,cos(x)), axis([0 2*pi -1 1]);

fplot(@(x)sin(x), [0 2*pi]), axis([-1 1 0 2*pi])       %    hold on

%    plot(x,sin(x)), axis([0 2*pi -1 1]);

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值