logo

matlab绘图经典算法大全


外套害怕
外套害怕 2023-11-28 10:31:18 18786
分类专栏: 资讯

1.条形图(Bar Plot)

  1. t = -10:1:10;

  2. subplot(2,2,1);

  3. bar(t, cos(t));

复制代码

这里创建了一个包含元素从-10到10的向量 t。在第一个子图中,使用 bar 函数绘制了 cos(t) 的条形图。bar 函数的第一个参数是 x 轴坐标,第二个参数是对应于每个 x 坐标的高度或值。这个子图显示了 cos(t) 在给定范围内的变化。
极坐标图(Compass Plot)

  1.  

  2.  

  3. subplot(2,2,2);

  4. compass(t, cos(t));

复制代码

在第二个子图中,使用 compass 函数创建了一个极坐标图。compass 函数以 t 为输入,cos(t) 作为极坐标的幅度。这个图形显示了 cos(t) 的相位和幅度信息。

玫瑰图(Rose Plot)

  1. subplot(2,2,3);

  2. rose(t, cos(t));

复制代码

第三个子图使用 rose 函数创建了一个玫瑰图。rose 函数接受角度向量 t 和对应的值 cos(t),然后绘制出与极坐标轴上的角度对应的频率。这个图形以玫瑰花瓣的形式展示了 cos(t) 的分布。
填充图(Filled Plot)

  1.  

  2. subplot(2,2,4);

  3. fill(t, cos(t), 'b');

复制代码

在第四个子图中,使用 fill 函数创建了一个填充图。fill 函数的第一个参数是 x 轴坐标,第二个参数是对应于每个 x 坐标的 y 值。此外,'b' 表示使用蓝色填充。这个图形显示了 cos(t) 在给定范围内的填充效果。

结果截图图下:
图片

2.1.clear: 清除 MATLAB 工作空间中的所有变量。
2.clc: 清除 MATLAB 命令窗口的内容。
然后,在生成时间向量 t 后,两个信号 y 和 Y 分别表示为 sin(t) 和 sin(10*t)。接着,对这两个信号进行对应元素相乘,得到新的信号 c。
最后,使用 plot 函数在同一张图上绘制了原始信号 y(用红色虚线表示)和相乘后的信号 c(用蓝色实线表示)。这样的图形可以用来展示信号的相乘效果。

  1. clear

  2. clc

  3. t=0:0.001:10;

  4. y=sin(t);

  5. % plot(t,y);

  6. Y=sin(10*t);

  7. c=y.*Y;

  8. plot(t,y,'r:',t,c,'b')

  9.  

复制代码

图片
3.1.clear: 清除 MATLAB 工作空间中的所有变量。
2.clc: 清除 MATLAB 命令窗口的内容。
然后,定义了一个包含四个数据元素的向量 x。接着,创建了一个与 x 相同大小的零向量 explode,用于设置哪一块需要突出显示。
通过 min 函数找到向量 x 中的最小值 c 和对应的索引 offset。然后,将 explode 中最小值对应的位置设置为最小值 c。
最后,使用 pie 函数创建一个饼图,其中通过 explode 参数实现了突出显示最小值的效果。饼图的每个扇区的大小由向量 x 中的元素决定。

  1. clear

  2. clc

  3. x=[11.4 23.5 35.4 15.6];

  4. explode=zeros(size(x));

  5. [c,offset]=min(x);

  6. explode(offset)=c;

  7. pie(x,explode)

复制代码

图片
4.1.clear: 清除 MATLAB 工作空间中的所有变量。
2.clc: 清除 MATLAB 命令窗口的内容。

然后,通过 meshgrid 函数生成了一个二维网格,其中 x 和 y 都是 401x401 的矩阵,表示在二维空间的坐标。
接下来,计算了每个点到中心的距离 r,并计算了二维 sinc 函数的值 z。
最后,使用 subplot 函数创建一个包含两个子图的图形窗口。在第一个子图中,使用 mesh 函数绘制了二维 sinc 函数的三维网格图。在第二个子图中,使用 surf 函数绘制了 sinc 函数的曲面图。这样可以同时比较二维网格图和曲面图的表示方式。

  1. clear

  2. clc

  3. x=-2:0.01:2;

  4. [x,y]=meshgrid(x,x); %x和y都是401x401的矩阵

  5. r=sqrt(x.^2+x.^2)+eps;

  6. z=sinc(r);

  7. subplot(2,1,1);

  8. mesh(z);

  9. subplot(2,1,2);

  10. surf(x,y,z);

复制代码

图片
5.
使用 peaks 函数生成一个典型的山峰状三维曲面,并通过不同的图形绘制函数在子图中展示了多个视图和效果。

  • meshz 函数(第一个子图):绘制曲面并加上围裙,即显示曲面和零平面。

  • waterfall 函数(第二个子图):在 x 方向产生水流效果的曲面图。

  • meshc 函数(第三个子图):同时画出网状图和等高线。

  • surfc 函数(第四个子图):同时画出曲面图和等高线。

  • surfl 函数(第五个子图):给出带光照效果的彩色表面图。

  • contourf 函数(第六个子图):绘制等高线填充图,即带有颜色填充的等高线图。

每个子图都使用 axis([-inf inf -inf inf -inf inf]) 来设置坐标轴的显示范围。

  1. clear

  2. clc

  3. [x,y,z] =peaks;

  4. subplot(2,3,1);

  5. meshz(x,y,z); %曲面加上围裙,即给出曲面和零平面

  6. axis([-inf inf -inf inf -inf inf]);

  7. subplot(2,3,2);

  8. waterfall(x,y,z); %在x方向产生水流效果

  9. axis([-inf inf -inf inf -inf inf]);

  10. subplot(2,3,3);

  11. meshc(x,y,z); %同时画出网状图与等高线

  12. axis([-inf inf -inf inf -inf inf]);

  13. subplot(2,3,4);

  14. surfc(x,y,z); %同时画出曲面图与等高线

  15. axis([-inf inf -inf inf -inf inf]);

  16. subplot(2,3,5)

  17. surfl(x,y,z); %给出带光照效果的彩色表面图

  18. axis([-inf inf -inf inf -inf inf]);

  19. subplot(2,3,6)

  20. contourf(x,y,z);

  21. axis([-inf inf -inf inf -inf inf]);

复制代码

图片
6.

  1. clear

  2. clc

  3. [X0,Y0,Z0]=sphere(30);       %产生单位球面的三维坐标

  4. X=2*X0;Y=2*Y0;Z=2*Z0;        %产生半径为2的球面的三维坐标

  5. clf

  6. subplot(1,2,1);

  7. surf(X0,Y0,Z0);          %画单位球面

  8. shading interp               %采用插补明暗处理

  9. hold on,mesh(X,Y,Z),colormap(hot),hold off       %采用hot色图

  10. hidden off                    %产生透视效果

  11. axis equal,axis off          %不显示坐标轴

  12. title('透视图')

  13. subplot(1,2,2);

  14. surf(X0,Y0,Z0);          %画单位球面

  15. shading interp               %采用插补明暗处理

  16. hold on,mesh(X,Y,Z),colormap(hot),hold off       %采用hot色图

  17. hidden on                    %产生消隐效果

  18. axis equal,axis off          %不显示坐标轴

  19. title('消隐图')

复制代码

图片
7.

  1. clear

  2. clc

  3.  

  4. subplot(2,2,1), fplot(@humps, [0 1])

  5. subplot(2,2,2), fplot(@(x) abs(exp(-1i*x*(0:9))*ones(10,1)), [0 2*pi])

  6.  

  7. % % Vectorize the function for subplot(2,2,3)

  8. % vec_func = @(x) [tan(x),sin(x),cos(x)];

  9. % x_range = linspace(2*pi*(-1), 2*pi*(1), 1000); % Adjust the number of points as needed

  10. % subplot(2,2,3), fplot(vec_func, x_range)

  11.  

  12. subplot(2,2,4), fplot(@(x) sin(1 ./ x), [0.01 0.1], 1e-3)

复制代码

图片
8.

  1. clear

  2. clc

  3. subplot(3,3,1)

  4. ezplot('cos(x)')

  5. subplot(3,3,2)

  6. ezplot('cos(x)', [0, pi])

  7. subplot(3,3,3)

  8. ezplot('1/y-log(y)+log(-1+y)+x - 1')

  9. subplot(3,3,4)

  10. ezplot('x^2 - y^2 - 1')

  11. subplot(3,3,5)

  12. ezplot('x^2 + y^2 - 1',[-1.25,1.25]);

  13. axis equal

  14. subplot(3,3,6)

  15. ezplot('x^3 + y^3 - 5*x*y + 1/5',[-3,3])

  16. subplot(3,3,7)

  17. ezplot('x^3 + 2*x^2 - 3*x + 5 - y^2')

  18. subplot(3,3,8)

复制代码

图片
9.

  1. clear

  2. clc

  3. t=(0:0.02:2)*pi;

  4. x=sin(t);

  5. y=cos(t);

  6. z=cos(2*t);

  7. plot3(x,y,z,'b-',x,y,z,'bd')

  8. view([-82,58]);

  9. box on

  10. legend('链','宝石');

复制代码

图片
10。

  1. clear

  2. clc

  3. subplot(2,2,1)

  4. contour3(peaks,50); %画出曲面在三度空间中的等高线

  5. axis([-inf inf -inf inf -inf inf]);

  6. subplot(2,2,2)

  7. contour(peaks, 50); %画出曲面等高线在XY平面的投影

  8. subplot(2,2,3)

  9. t=linspace(0,20*pi, 501);

  10. plot3(t.*sin(t), t.*cos(t), t);% 画出三度空间中的曲线

  11. subplot(2,2,4)

  12. plot3(t.*sin(t), t.*cos(t), t, t.*sin(t), t.*cos(t), -t);% 同时画出两条三度空间中的曲线<i< p=""></i<>

复制代码

图片
11.

  1. clear

  2. clc

  3. subplot(1,2,1);

  4. t = 0:0.01:2*pi;

  5. x = cos(2*t).*(cos(t).^2);

  6. y = sin(2*t).*(sin(t).^2);

  7. comet(x,y)

  8. subplot(1,2,2);

  9. t = -10*pi:pi/250:10*pi;

  10. comet3((cos(2*t).^2).*sin(t),(sin(2*t).^2).*cos(t),t)

复制代码

图片

 

网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。

本文链接:http://www.xckfsq.com/news/show.html?id=29062
赞同 0
评论 0 条
外套害怕
粉丝 0 发表 16 + 关注 私信
上周热门
人工智能赋能视频指挥 | 兴图新科携新品亮相北京军博会  4100
向新 共未来丨诚邀您参与2024中兴通讯创兴日  4042
诺基亚Lumia,重生  3869
第二届BCS企业数字化转型及数据安全专题研讨会在成都举行  3739
“移启”向前 共筑安全长城——重庆移动走进启明星辰专项活动成功举办  3735
国标16260中软件可移植性的子特性  3662
数据库管理系统中的模式与映像  3589
软件设计之耦合  3571
类似大蚂蚁即时通讯软件推荐  3537
2024苏州(高新区)信息技术应用创新交流及供需对接会顺利召开!  3510
本周热议
我的信创开放社区兼职赚钱历程 40
今天你签到了吗? 27
如何玩转信创开放社区—从小白进阶到专家 15
信创开放社区邀请他人注册的具体步骤如下 15
方德桌面操作系统 14
用抖音玩法闯信创开放社区——用平台宣传企业产品服务 13
我有15积分有什么用? 13
如何让你先人一步获得悬赏问题信息?(创作者必看) 12
2024中国信创产业发展大会暨中国信息科技创新与应用博览会 9
中央国家机关政府采购中心:应当将CPU、操作系统符合安全可靠测评要求纳入采购需求 8