- MATLAB 的工作界面
- 默认布局
- 自定义布局
- 历史记录窗口
- 调用以前运行过的语句
- 常用操作
- 1. 清除操作
- clc 效果
- clear 效果
- clf
- clf 帮助文档
- clf 效果
- close 效果
- 2. 帮助
- Matlab 中的数据结构
- 矩阵的数据访问
- 向量化操作的内置函数
- 常量与变量
- 1. 常量表
- 2. 变量的命名规则
- 3. 语句的常见形式
- 算术运算符
- 1. 加、减、乘、除、乘方
- 2. 矩阵运算 和 数组运算
- 逻辑运算符号
- 其他常用符号
MATLAB
是Matrix Laboratory
的简写,意为 矩阵实验室。 它产生于 20世纪 70年代后期,是美国 New Mexico 大学计算机系主任 Cleve Moler 在给学生讲授线性代数课程时,为学生使用 EISPACK 和 LINPACK 而编写的接口程序。1984 年,由 MathWorks 公司正式推向市场,并不断更新完善。MATLAB
是一款简单易用的数学软件,由美国 mathworks 公司发布,主要面对科学计算、可视化以及交互式程序设计的高科技计算环境,具有强大的 数据处理 能力和出色的 图形处理 功能。学习并掌握它,有助于人们从繁重的数学计算中解脱出来,把更多的精力投入数学理论的学习和研究。
【que】为什么需要数据分析?
【ans】将大量复杂数据转化为可操作的信息。
MATLAB 的工作界面
默认布局
MATLAB R2023a
的默认布局如下图所示:
- 上方 的菜单栏是 工具条,包含 文件、变量、代码、SIMULINK、环境 和 资源 几个部分。
- 右 边窗口为 命令窗口(
Command Window
),用于 输入操作命令; - 左上方 窗口为 当前文件夹,其上方是当前文件夹所在的路径。
- 左下方 窗口为 工作空间管理窗口(
Workspace
),显示所有 目前保存在内存中的MATLAB
变量 的 变量名、数据结构、字节数以及类型,不同的变量类型分别对应不同的变量名图标。
自定义布局
有时可能由于误操作,更改了 MATLAB
的工作界面,要 恢复到默认的工作界面,环境 中的 布局 改为 默认
即可。
可以在工具条中的 环境 中的 布局 自定义布局,还可以在 显示 中选择要显示的内容。比如上方的工具条丢失了,在 显示 中勾选 工具条
即可显示。
历史记录窗口
历史记录窗口(Command History
),保留自安装时起所有命令的历史记录,并标明使用时间,以方便使用者查询。双击某一行命令,即在命令窗口中执行该命令;
调用以前运行过的语句
这里的命令历史记录,如果选择 弹出,效果是按键盘上的 ↑ ↓方向键选择以前运行过的语句,按 enter选中;
如果选择 停靠,效果如下图所示:
此时,右侧选中某个用过的命令,再双击,即可再次运行该命令。
常用操作
1. 清除操作
>> clc %清除命令窗口中的所有内容
>> clear %清除工作空间的所有变量
>> clear all %清除工作空间的所有变量,函数和 MEX 文件>> clf %清除图形窗口内容
>> close %关闭当前的 Figure 窗口
>> close all %关闭所有的 Figure 窗口
这些命令一般写在 matlab
程序的 第一行。
其中,符号 %
表示 注释,在命令窗口中不运行。
MEX
文件是一种可在matlab
环境中调用的 C 语言(或 fortran)衍生程序,mex
的编译结果实际上就是一个带输出函数 mexFunction 的 dll 文件。
clc 效果
对比下方两图,观察 clc
的效果,只清空命令窗口,而不清空工作区的变量:
clc
后,工作区的变量还在。
clear 效果
对比下方两图,观察 clear
的效果,只清空工作区的变量,而不清空命令窗口:
clear
后,命令行窗口的命令还在。
clf
clf 帮助文档
【函数说明】
clf
:删除 当前图窗中 具有可见句柄 的所有子级。(比如它们的HandleVisibility
属性设置为on
)clf(fig)
:删除 指定图窗 中 具有可见句柄 的所有子级。clf(‘reset’)
:删除 当前图窗 的所有子级,不管其句柄可见性 如何。它还将 图窗属性重置为默认值,但Position
、Units
、PaperPosition
和PaperUnits
属性除外。clf(fig,‘reset’)
:删除 指定图窗 的所有子级并 重置其属性。f = clf(…)
:可使用上述任一语法 返回图窗。用于图像IntegerHandle
属性关闭时,因为当使用重置选项时 非整数句柄不可用(比如IntegerHandle
设置为默认值 on)。
【可见句柄】如果对象的
HandleVisibility
属性设置为'on'
,则 句柄对clf
可见。
- 当在命令行窗口或回调例程中调用
clf
时,该函数仅删除那些其HandleVisibility
属性设置为'on'
的对象。- 它不会删除其
HandleVisibility
属性设置为'callback'
或'off'
的对象。
clf 效果
close 效果
close
:关闭当前的 Figure
窗口
2. 帮助
- 请求帮助文件
>>help 请求内容
如:
>>help elfun %关于基本函数的帮助信息
>>help exp %指数函数 exp的详细信息
- 超文本格式的帮助文件
>>doc 请求内容
如:
>>doc elfun %以超文本格式显示关于基本函数的帮助信息
>>doc exp %以超文本格式显示关于指数函数的帮助信息
- 请求帮助
>>lookfor 请求内容
当要查找 具有某种功能但又不知道准确名字 的指令时,help
的能力就不够了,此时可使用 lookfor
命令。lookfor
可以根据用户提供的完整或不完整的关键词,去搜索出一组与之相关的指令。
如:
>>lookfor integral %查找有关积分的指令
>>lookfor fourier %查找能进行傅里叶变换的指令
- 请求演示
>>demo 请求内容
【总结】
- 命令
help
、doc
、lookfor
都有各自的特点,其中help
与doc
只是显示方式不同。 help
、doc
的请求内容必须 完整准确,而lookfor
后面的请求内容 可以不完整。
Matlab 中的数据结构
手动创建 数组:
矩阵的数据访问
A ( j , k ) A(j, k) A(j,k),其中, j j j 表示第 j j j 行, k k k 表示第 k k k 列。 A ( e n d , 1 ) A(end,1) A(end,1) 表示矩阵 A A A 的最后一行第一列的数据。 A ( 1 : e n d , 3 ) A(1:end,3) A(1:end,3) 表示矩阵 A A A 第三列从第一行到最后一行的数据。 A ( : , 3 ) A(:,3) A(:,3) 中的 : : : 默认为所有的行。
向量化操作的内置函数
常量与变量
1. 常量表
MATLAB
语言本身具有一些预定义的变量值,这些特殊的 有特定值变量称为常量。
常量 | 表示数值 |
---|---|
p i pi pi | 圆周率 π \pi π |
i n f inf inf | 正无穷大 |
N a N NaN NaN | 表示不定值 |
i , j i,j i,j | 虚数单位 |
e p s eps eps | 计算机的最小数 |
r e a l m a x realmax realmax | 最大可用正实数 |
r e a l m i n realmin realmin | 最小可用正实数 |
2. 变量的命名规则
MATLAB
语言中的 变量是由字母、数字、下划线组成,主要 命名规则 为:
- 以字母开头;
- 区分大小写。
3. 语句的常见形式
MATLAB
语句有两种最常见形式:
>>变量 = 表达式;
运行结果显示为 变量 = …
。
>>表达式;
运行结果显示为 ans = …
。
其中,ans
是指 当前的计算结果,若计算时用户没有对表达式设定变量,系统就自动赋当前结果给 ans
变量。如:
算术运算符
1. 加、减、乘、除、乘方
MATLAB
的 加、减、乘法运算符 的输入和通常的电脑输入是一致的。- 除法运算 分左除(
\
)和右除(/
),2/3
是2 除以 3
,而2\3
实际是3 除以 2
。为了避免混淆,对一般除法运算采取前者。 - 乘方运算符 为电脑键盘上的
^
。
运算符 | 矩 阵的 MATLAB 输入 | 数 组的 MATLAB 输入 |
---|---|---|
加 | + | + |
减 | - | - |
乘 | * | .* |
除 | / | ./ |
乘方 | ^ | .^ |
2. 矩阵运算 和 数组运算
MATLAB
的运算分 矩阵运算 和 数组运算 两种。
线性代数中把 m
行 n
列元素所排成的矩形阵称为矩阵。如:
只有 1 行或 1 列的矩阵叫做向量或数组。
MATLAB
的 基本数据单位是矩阵,因此,正常的运算是矩阵运算,在 运算符前加点的运算是数组运算。
在 MATLAB
实际操作时如果刻意区分运算符前是否加点可能会使问题复杂化,制造出不必要的混乱。符合人们的习惯思维是 MATLAB
的一大优点,因此,在操作时,可先按不加点的方式进行输入,如果输入没有其他错,而命令运行不了,那么其运算就可能是数组运算,在相应的运算符前加 .
试试。
如:
逻辑运算符号
逻辑运算是 MATLAB
中数组运算的一种运算形式,也是几乎所有的高级语言普遍使用的一种运算。
符号运算符 | 功 能 | 函 数 名 |
---|---|---|
= = == == | 等于 | e q eq eq |
∼ = \sim= ∼= | 不等于 | n e ne ne |
< < < | 小于 | l t lt lt |
> > > | 大于 | g t gt gt |
< = <= <= | 小于等于 | l e le le |
> = >= >= | 大于等于 | g e ge ge |
& \& & | 逻辑与 | a n d and and |
∣ | ∣ | 逻辑或 | o r or or |
∼ \sim ∼ | 逻辑非 | n o t not not |
【说明】在算术运算、比较运算和逻辑与、或、非运算中,它们的 优先级关系先后 为:比较运算、算术运算、逻辑与或非运算。
其他常用符号
符 号 | MATLAB 输入 | 用 途 |
---|---|---|
逗号 | , | 分隔变量、表达式、矩阵的列 |
分号 | ; | 分隔命令行而不显示运行结果,分隔矩阵的行 |
单引号 | ' ' | 定义字符串 |
冒号 | : | x = a : b : c 表示 x 从 a 以步长 b 取值至 c |
等号 | = | 变量赋值 |
百分号 | % | 命令注释 |
三个句点 | ... | 续行 |
圆括号 | ( ) | 区分运算次序 |
方括号 | [ ] | 构成矩阵或向量 |
【例题】在 MATLAB
中输入矩阵 A = [ 1 2 3 4 5 6 7 8 9 ] A = \begin{bmatrix} 1 & 2 & 3 \\ 4 & 5 & 6 \\ 7 & 8 & 9 \end{bmatrix} A= 147258369 。
MATLAB
程序如下:
>>A = [1,2,3; 4,5,6; 7,8,9] %行与行之间用分号分隔,每行的(列)元素间用逗号分隔