当前位置: 首页 > news >正文

Matlab自学笔记

一、我下载的是Matlab R2016a软件,打开界面如下:

二、如何调整字体大小,路径为:“主页”->“预设”->“字体”。

三、命令行窗口是直接进行交互式的,如下输入“3 + 5”,回车,就得到结果“8”。

四、创建编辑器路径:“新建”->“脚本”。

五、使用命令clc可以清除命令行窗口中的所有内容。变量明面规则:区分大小写;变量名以字母开头,又字母、数字、下划线组成,不能使用标点。

六、上面的命名规则也适用于脚本文件命名规则。命令“clear”是清除工作区的所有内容。

七、单行注释与多行注释:如下,

注意“%{”与“%}”单独成一行。 

八、数据类型:数字;字符和字符串:使用单引号括起来;

九,设s是一个变量,则abs(s)会输出变量s的ASCII码;char(97)会输出97对应的字符;length(str)会输出字符串变量str的长度,包括中间的空格。

十、定义一个矩阵,如下图:

十一、 将上面b矩阵进行转置,使用单引号“ ' ”,如下:

十二、使用“:”将一个矩阵拉长,如下:

十三、 一个方阵与其逆矩阵的乘积为一个单位矩阵。利用inv()利用求一个方阵的逆矩阵。

十四、利用rand(a,b,c)生成一个随机矩阵,a:行数;b:列数;c:维数。如下:

各个维度的数值在0到1之间。 利用zeros(a,b,c)生成一个全是0的矩阵,a:行数;b:列数;c:维数。利用magic(m)生成一个m阶的方阵,

这个方阵有一个特点,每一行的和等于每一列的和,还等于主对角线的和以及副对角线的和。称该矩阵为幻方矩阵。

十五、 元胞数组,类似于数组,操作如下:

cell(1,6)生成一个1行6列的元胞数组;eye(4)表示生成一个4行4列的单位矩阵。元胞数组的索引是从0开始的。 

十六、结构体:定义如下:

其中,field3对应的是一个矩阵。 有点类似python中的字典。

十七、内容如下:

A = 1:2:9 中的 “1” 表示起点,“2” 表示步长,“9” 表示终点。repmat(A,3,1) 中的 “3” 表示把 A 重复 3 行,“1” 表示把A重复1列。

ones(3,2) 表示的是生成一个 3 行 2 列的全是 1 的矩阵。

十八、矩阵的运算。假设有矩阵 A:2 行 4 列;B:2 行 4 列。那么,A + B 表示两矩阵对应项相加即可;A - B 表示两矩阵对应项相减即可;A * B’ 表示两矩阵相乘,“ B’ ” 表示B的逆矩阵;A .* B 表示两矩阵对应项相乘;A / B 表示的跟A * B’ 是一样的;A ./ B 表示的是两矩阵对应项相除。 

十九、利用 magic(n) 生成一个n阶的幻方矩阵,A(2,3)表示提取幻方矩阵的第二行第三列的元素;A(2,:)表示提取第二行所有的元素,“ :”表示所有元素;A(:,3)表示提取第三列所有的元素;[m,n] = find(A > 5) 表示在幻方矩阵里面查找值大于 5 的元素,并且将其索引赋给 m 和 n ,生成一个索引矩阵。

二十、matlab的逻辑与控制。1、for循环结构,语法规则如下:

举例如下:注意步长为1的时候可以省略不写。

循环嵌套的情况: 

2、while循环结构,语法规则如下:

举例如下: 当循环条件成立的时候,就执行语句。

3、if…end分支结构。

举例如下: 

4、if…else…end分支结构,语法规则如下:

5、swith…case…end 结构。语法规则如下:

二十一、matlab中的语句结尾的分号是为了让命令行窗口中不显示该语句的结果。示例如下:执行如下编辑器中的代码。

会在命令行窗口中显示如下:只输出了z的结果。

 

其他情况时候如下: 

在命令行窗口中显示如下:

 

二十二、二维平面绘图。 示例如下,执行如下代码。

x = 0:0.01:2 * pi;表示起点为0,终点为2π,步长为0.01。figure;表示创建一个图形窗口。plot(x,y);表示绘制以 x 为横坐标、y 为纵坐标的二维曲线。title('y=sin(x)');表示为当前图形窗口中的图形添加标题。xlabel('x');表示为当前图形的 x 轴添加标签。ylabel('sin(x)');表示为当前图形的 y 轴添加标签。xlim([0 2*pi]);表示设置当前图形的 x 轴显示范围。在命令行窗口中显示如下:

显示的图形如下:

二十三、二维平面绘图。含有两个y轴。 如下,首先定义一个x向量,然后定义y1、y2,注意“ .* ”是矩阵对应元素的乘法。plotyy 函数用于绘制具有两个 y 轴的图形。'plot' 是指定绘图的类型为普通线图。函数返回三个值,AX 是包含两个坐标轴对象的向量,H1 和 H2 分别是对应两条曲线。get(AX(1),'Ylabel') 先获取左侧坐标轴(AX(1) 表示第一个坐标轴对象)的 y 轴标签对象。set(..., 'String', 'Slow Decay') 再将该标签对象的文本内容设置为 'Slow Decay' 。get(AX(2),'Ylabel') 获取右侧坐标轴(AX(2) 表示第二个坐标轴对象)的 y 轴标签对象,然后 set 函数将其文本内容设置为 'Fast Decay' 。xlabel 函数用于为 x 轴添加标签,\mu 是 MATLAB 中表示希腊字母 μ 的转义字符,这里表示时间单位微秒。title 函数用于在图形顶部添加标题。set 函数根据曲线句柄 H1 找到对应的曲线对象,然后将其 'LineStyle' 属性设置为 '--' ,表示虚线。set 函数根据曲线句柄 H2 找到对应的曲线对象,将其 'LineStyle' 属性设置为 ':' ,即点线样式。句柄相当于曲线的身份证。

 

执行结果如下: (分部分执行和全部执行)

 

 

二十四、三维立体绘图。代码如下,plot3 函数是 MATLAB 中用于绘制三维图形的函数。它接受三个向量作为参数,分别对应三维空间中的 xyz 坐标。grid on是在三维图形中显示网格线。当使用 axis square 命令后,MATLAB 会调整坐标轴的显示,这样绘制出的图形能更准确地呈现出数据在三维空间中的真实形状和比例关系。

 

上面的代码全部执行后成图如下: 

二十五、将matlab生成的图复制到文档里面的操作:“编辑”->“复制图形”。然后在文档里面进行Ctrl+V就可以粘贴了。

 

二十六、当我们的文档是左右两栏格式的,粘贴上去的图片太大,我们直接进行缩小时会降低其清晰度。操作路径为:“文件”->“导出设置”。如下:

 

将宽度改成200,单位改为磅,再应用于图形。这样,我们再在“编辑”中“复制图形”就可以了。

二十七、利用matlab生成一个双峰图形。如下:

双峰图形如下: 

 

 

 

相关文章:

  • 网工_UDP协议
  • JavaWeb学习打卡-Day7-正向代理、反向代理、Nginx
  • C++--入门基础
  • JVM 如何使用性能分析工具定位代码中的性能问题?
  • 基于bert的情感分析程序
  • 【安装指南】DevC++的安装和使用(超级详细)
  • 【Linux】Linux奇技淫巧
  • 从0开始建立Github个人博客(hugoPaperMod)
  • ubuntu的libc 库被我 sudo apt-get --reinstall install libc6搞没了
  • AI人工智能的接入和使用
  • Matplotlib核心课程-2
  • 【符号调制技术与载波调制技术】
  • Controller层接收参数方式
  • Java学习手册:Spring Boot 自动配置与快速开发
  • RISCV的smstateen-ssstateen扩展
  • 方案精读:虚拟电厂“七问七答”详解【附全文阅读】
  • 人工智能项目开发项目
  • Android面试总结之jet pack模块化组件篇
  • 2505ahk,wmi学习
  • 本地服务验证-仙盟创梦IDE-智能编程,编程自动备份+编程审计
  • 陈芋汐世界杯总决赛卫冕夺冠,全红婵无缘三大赛“全满贯”
  • 人民日报今日谈:为何重视这个“一体化”
  • 英国地方选举结果揭晓,工党保守党皆受挫
  • 人民日报评论员:因势利导对经济布局进行调整优化
  • 经营业绩持续稳中向好,国铁集团2024年度和2025年一季度财务决算公布
  • 吴志朴当选福建德化县人民政府县长