• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

matlab作图(子图+图像重叠显示) - 不做程序猿

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

matlab作图(子图+图像重叠显示)

2019-03-19 11:19  不做程序猿  阅读(5556)  评论(0编辑  收藏  举报

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人参与评论

请发表评论

全部评论

专题导读
上一篇:
用MATLAB同时作多幅图发布时间:2022-07-18
下一篇:
matlab一次读取多张图片发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap