Day20_0.1基础学习MATLAB学习小技巧总结(20)——MATLAB绘图篇(3)

news2024/11/25 11:36:12

利用空闲时间把碎片化的MATLAB知识重新系统的学习一遍,为了在这个过程中加深印象,也为了能够有所足迹,我会把自己的学习总结发在专栏中,以便学习交流。

参考书目:《MATLAB基础教程 (第三版) (薛山)》

之前的章节都是基础的数据运算用法,对于功课来说更加重要的内容是建模、绘图、观察数据趋势,接下来我会结合自己的使用经验,来为大家分享绘图、建模使用的小技巧。

在本章中的代码,会以资源的形式发在我的博客里供大家免费下载学习。

特殊图形绘制(2) 

1 直方图

MATLAB中有两个函数可以绘制直方图:histogram和rose,分别运用于直角坐标系和极坐标系中绘制直方图。hist函数的应用更为广泛一些,这里也是基于hist函数介绍。

(1)n =  histogram(Y),绘制Y的直方图。

(2)n = histogram(Y,x),指定直方图的每个分格。其中,x为向量。绘制直方图时,以x的每个元为中心创建分格。

(3)n = histogram(Y,nbins)指定分格的数目。

例:

x=randn(1000,1);
subplot(1,3,1),histogram(x),title('default histogram')
subplot(1,3,2),histogram(x,20),title('bin=20')
x_axis = [-3:0 5:-2];
subplot(1,3,3),histogram(x,x_axis),title('x_label ')

 

2 方向矢量图和速度矢量图

MATLAB可以绘制方向天量图和速度天量图。本节介绍方向天量图和速度矢量图的绘制。用于绘制方向天量图和速度矢量图的函数如下表所示:

函数功能
compass罗盘图,绘制极坐标图形中的向量
feather羽状图,绘制向量,向量起点位于与x轴平行的直线上,长度相等
quiver二维矢量图,绘制二维空间中指定点的方向矢量
quiver3三维矢量图,绘制三维空间中指定点的方向矢量

矢量由一个或者两个参数指定,指定矢量相对于原点的x分量和y分量。如果输入一个参数,就将输入视为复数,复数的实部为x分量,虚部为y分量;如果输入两个参数,则两个参数分别为向量的x分量和y分量。

2.1 罗盘图

罗盘图由函数compass绘制,MATLAB 的官方调用格式如下:

例:风向标的绘制

wdir=[45 90 90 45 360 335 360 270 335 270 335 335];%初始化风向,用角度表示
knots=[6 6 8 6 3 9 6 8 9 10 14 12];%初始化风力
rdir = wdir * pi/180;%将角度转换为氢度
[x,y]=pol2cart(rdir,knots);%将极坐标转换为笛卡尔坐标
compass(x,y)

 

 

2.2 羽状图的绘制

羽状图由函数feather绘制,该函数的官方调用格式为:

 

 例:在图形中显示角的方向

theta=(-90:10:90)*pi/180;
r=2*ones(size(theta));
[u,v]= pol2cart(theta,r);
feather(u,v);

 

2.3 矢量图的绘制

MATLAB中可以绘制二维量和三维矢量图。矢量图在空间中的指定点绘制关量。用于绘制二维矢量图和三维矢量图的函数分别为quiver和quiver3。这两个函数的调用格式基本相同。下面仅以二维矢量图为例,介绍关量图的绘制。函数quiver的官方调用格式如下:

 下面是几个官方给的例子:

1 加载表示北美上空气流的采样数据。对于此示例,选择该数据的子集。

load('wind','x','y','u','v')
X = x(11:22,11:22,1);
Y = y(11:22,11:22,1);
U = u(11:22,11:22,1);
V = v(11:22,11:22,1);
%创建所选子集的箭头图。...
...向量 X 和 Y 表示每个箭头的起始点位置,
... U 和 V 表示每个箭头的定向分量。默认情况下,
...quiver 函数会缩短箭头,使其不重叠。
...调用 axis equal 以沿每个轴使用相等的数据单位长度。
...这会使箭头指向正确的方向。
quiver(X,Y,U,V)
axis equal

 

2 指定箭头图的坐标区

 

%创建一个由 X 和 Y 值以及两组 U 和 V 定向分量组成的网格。
[X,Y] = meshgrid(0:pi/8:pi,-pi:pi/8:pi);
U1 = sin(X);
V1 = cos(Y);
U2 = sin(Y);
V2 = cos(X); 
%创建一个具有两个坐标区 ax1 和 ax2 的分块布局图。想每个坐标区添加一个箭头图和标题。(在 R2019b 之前,使用 subplot 而不是 tiledlayout 和 nexttile。)

tiledlayout(1,2)

ax1 = nexttile;
quiver(ax1,X,Y,U1,V1)
axis equal
title(ax1,'Left Plot')

ax2 = nexttile;
quiver(ax2,X,Y,U2,V2)
axis equal
title(ax2,'Right Plot')

 

3 等值线 

等值线在实际中应用广泛,如地形图、气压图等。本节介绍等值线的绘制。MATLAB提供了一些函数用于绘制等值线。这些函数及其功能如下表所示:

函数

功能
clabel在二维等值线中添加高度值
contour绘制指定数据的二维等值线
contour3绘制指定数据的三维等值线
contourf绘制二维等值线,并用颜色填充各等值线之间的区域
contourc用于计算等值线矩阵,通常由其他函数调用
meshc绘制二维等值线对应的网格图
surfc绘制二维等值线对应的表面图

这里只介绍最常用的等值线函数contour,其他函数如果读者感兴趣可以查询使用。

关于contour函数的官方调用格式如下:

例:

n=-2.0:.2:2.0;
[X,Y ,Z]= peaks(n);
contour(X,Y,Z,10);
hold on
[U,V]= gradient(Z,.2);
quiver(X,Y,U,V)

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2118119.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

项目实战系列三: 家居购项目 第五部分

&#x1f333;显示订单[订单管理] &#x1f333;暂时缺货 需求分析 1.如果某家居库存为0, 首页的"Add to Cart" 按钮显示为"暂时缺货" 2.后台也加上校验. 只有在 库存>0 时, 才能添加到购物车 代码实现 1.修改web/views/customer/index.jsp <c:if…

网络层 VIII(网络层设备——路由器)【★★★★★★】

一、冲突域与广播域 这里的“域”表示冲突或广播在其中发生并传播的区域。 1. 冲突域 冲突域是指连接到同一物理介质上的所有结点的集合&#xff0c;这些结点之间存在介质争用的现象&#xff08;能产生冲突的所有设备的集合&#xff09;。也就是说&#xff0c;若这些设备同时发…

ABeam德硕 | 海立集团BI项目正式启动,ABeam中国助力实现以数据之力驱动经营管理

9月2日&#xff0c;由德硕管理咨询&#xff08;上海&#xff09;有限公司作为实施合作伙伴的海立集团BI项目正式启动&#xff0c;海立集团党委书记、总经理缪骏、ABeam大中华区董事长兼总经理中野洋辅出席项目启动仪式。 ABeam大中华区董事长兼总经理中野洋辅 在致辞中表示&am…

【vue+el-table】表格操作列宽度跟随按钮个数自适应, 方法封装全局使用

效果图 以上图片分别代表不同用户权限下所能看到的按钮个数, 操作列宽度也会自适应宽度, 就不会一直处于最大宽度, 导致其他权限用户看到的页面出现大量留白问题. 目录 解决方法解决过程中可能出现的问题width赋值时为什么不放update()中btnDom为什么不能直接调用forEach为…

【网络原理】❤️Tcp 连接管理机制❤️ “三次握手” “四次挥手”的深度理解, 面试最热门的话题,没有之一, 保姆式教学 !!!

本篇会加入个人的所谓鱼式疯言 ❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言 而是理解过并总结出来通俗易懂的大白话, 小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的. &#x1f92d;&#x1f92d;&#x1f92d;可能说的不是那么严谨.但小编初心是能让更多人…

杰发科技Bootloader(3)—— 基于7801的APP切到Boot

为了方便在APP中跳转到Boot重新进行升级&#xff0c;有两种办法&#xff0c;7840同样可以使用。 1. 调用reset接口进行复位&#xff0c;复位后会先进Boot&#xff0c;再自动跳转到App。 NVIC_SystemReset(); 2. 直接使用跳转指令&#xff0c;参考Boot跳转到App代码&#xff0…

有哪些常用的企业统一门户?为何选择移动应用管理平台WorkPlus

企业统一门户是为了解决企业内部应用分散、管理繁琐的问题&#xff0c;提供集成化的应用平台&#xff0c;旨在提高员工的工作效率和便利性。而在众多的企业统一门户中&#xff0c;作为一款领先的移动应用管理平台&#xff0c;WorkPlus备受青睐。本文将介绍一些常用的企业统一门…

Sentinel 控制界面

一、下载 可视化jar 二、cmd 启动 jar java -Dserver.port8718 -Dcsp.sentinel.dashboard.server127.0.0.1:8718 -Dproject.namesentinel-dashboard -jar sentinel-dashboard-1.8.2.jar 页面访问&#xff1a; http://localhost:8718/#/dashboard/

Elasticsearch Suggesters 自动补全长度设置

问题&#xff1a;在用户输入之后联想词返回长度默认为50&#xff0c;导致返回结果不完全 原因&#xff1a;completion 字段索引时允许存储的文本长度受 max_input_length 参数控制&#xff08;默认为 50 字符&#xff09;。可以在 mapping 中调整这个值 解决&#xff1a;“max…

【西电电装实习】焊接台组、焊接技巧

前言 工训中心 - 电装实习&#xff0c;进行实操的笔记 --- 一、焊台 二、焊枪大功率的握法&#xff08;反握法&#xff09; 三、余锡擦拭 四、pcb板与焊盘 五、焊接技巧 先加热焊盘&#xff0c;再上锡&#xff08;不能不加热焊盘&#xff0c;让锡往下漏&#xff09;上锡的时…

首届世界风筝创意大赛专家委员会成立 艺术大咖共话“风筝文化”

9月6日上午&#xff0c;世界风筝公园首届世界风筝创意大赛专家委员会成立暨座谈会在世界风筝公园召开。来自清华大学、中央音乐学院、中国美术学院等院校的专家学者及国际知名艺术家、设计师齐聚一堂&#xff0c;共同成立大赛专家委员会&#xff0c;并探讨以风筝为主题的艺术创…

简单的springboot log4j2日志配置

简单的springboot log4j2日志配置 1.简介 Log4j2 是 Apache Software Foundation 开发的一个日志记录工具&#xff0c;它是 Log4j 的后续版本&#xff0c;并且在多个方面进行了改进。以下是 Log4j2 的一些关键特性&#xff1a; 性能提升&#xff1a;Log4j2 在设计上做了很多优…

内裤洗衣机哪个牌子好又实惠?诚意盘点五款绝佳内衣洗衣机!

在当今繁忙的生活中&#xff0c;内衣洗衣机已成为我们日常生活中不可或缺的家电。但是&#xff0c;面对市场上众多品牌的内衣洗衣机&#xff0c;那么&#xff0c;到底内衣洗衣机哪个牌子好&#xff1f;本次我将在这篇文章中探讨内衣洗衣机的选购策略&#xff0c;以帮助大家找到…

Java并发编程实战 10 | 线程安全问题

什么是线程安全&#xff1f; 《Java并发实践》的作者 Brian Goetz 对线程安全的定义是&#xff1a;当多个线程访问同一个对象时&#xff0c;如果无需考虑这些线程在运行时的调度策略和交替执行顺序&#xff0c;也不需要进行额外的同步处理&#xff0c;仍然能够得到正确的结果&…

C语言--12字符串处理函数

函数strstr 函数strchr与strrchr 注意&#xff1a; 这两个函数的功能&#xff0c;都是在指定的字符串 s 中&#xff0c;试图找到字符 c。strchr() 从左往右找第一个&#xff0c;strrchr() 从左往右找最后一个。字符串结束标记 ‘\0’ 被认为是字符串的一部分。 函数strlen 示例…

一款免费开源功能丰富的看图软件NeeView

NeeView 是一款功能丰富的图像查看软件&#xff0c;它以其独特的浏览体验和广泛的支持格式受到用户的欢迎。NeeView 不仅可以浏览普通的图像文件&#xff0c;还能够查看压缩包内的图片、预览PDF文档甚至播放视频文件。 NeeView 的主要特点&#xff1a; 多格式支持&#xff1a…

《人工智能安全治理框架》1.0版

人工智能是人类发展新领域&#xff0c;给世界带来巨大机遇&#xff0c;也带来各类风险挑战落实《全球人工智能治理倡议》&#xff0c;遵循“以人为本、智能向善”的发展方向&#xff0c;为推动政府、国际组织、企业、科研院所、民间机构和社会公众等各方&#xff0c;就人工智能…

无人机之穿越机的类型

穿越机&#xff0c;即FPV Drone或Racing Drone&#xff0c;是一种主要通过第一人称视角&#xff08;FPV&#xff09;进行操作的无人机。这种无人机通常配备有四个电机和相应的飞控系统&#xff0c;使其具有极高的飞行自由度和速度。穿越机的类型多样&#xff0c;可以从不同角度…

GD32E230程序烧录和开发环境使用介绍

GD32E230程序烧录和开发环境使用介绍 从GD32提供的资料来看&#xff0c;支持IAR、Keil、EmbeddedBuilder&#xff1b;目前该软件还是比较粗糙&#xff0c;个人上手体验不佳&#xff0c;面板菜单按键烧操作一下&#xff0c;动不动就卡死&#xff0c;仅支持gdlink调试器。 Embed…

第100+24步 ChatGPT学习:概率校准 Beta Calibration

基于Python 3.9版本演示 一、写在前面 最近看了一篇在Lancet子刊《eClinicalMedicine》上发表的机器学习分类的文章&#xff1a;《Development of a novel dementia risk prediction model in the general population: A large, longitudinal, population-based machine-learn…