MATLAB学习第二天(基础语法、变量、命令以及新建自己文件)下

简介: MATLAB学习第二天(基础语法、变量、命令以及新建自己文件)

正文


MATLAB格式命令


默认情况下,MATLAB 四个小数位值显示数字。这就是所谓的 short format.

如果想更精确,需要使用 format 命令。

长(long ) 命令格式显示小数点后16位。


例如:

format long
x = 7 + 10/3 + 5 ^ 1.2


MATLAB将执行上面的语句,并返回以下结果:

x =
  17.231981640639408


format short 例子:

format short
x = 7 + 10/3 + 5 ^ 1.2


MATLAB将执行上面的语句,并返回以下结果:

x =
   17.2320


空格格式命令回合到小数点后两位数字。例如:

format bank
daily_wage = 177.45;
weekly_wage = daily_wage * 6


MATLAB将执行上面的语句,并返回以下结果:

weekly_wage =
       1064.70


MATLAB 显示大量使用指数表示法。

短格式e命令允许以指数的形式显示小数点后四位,加上指数。


例如:

format short e
4.678 * 4.9


MATLAB将执行上面的语句,并返回以下结果:

ans =
   2.2922e+01 


format long e命令允许以指数的形式显示小数点后十六位,加上指数。例如:

format long e
x = pi


MATLAB将执行上面的语句,并返回以下结果:

x =
     3.141592653589793e+00


format rat 格式大鼠命令给出最接近的有理表达式,从计算所得。例如:

format rat
4.678 * 4.9


MATLAB将执行上面的语句,并返回以下结果:

ans =
   2063/90  


MATLAB创建向量


向量是一维数组中的数字。 MATLAB允许创建两种类型的矢量:

  • 行向量
  • 列向量

创建行向量括在方括号中的元素的集合,用空格或逗号分隔的元素。

例如,

r = [7 8 9 10 11]

MATLAB将执行上面的语句,并返回以下结果:

r =
  Columns 1 through 4
       7              8              9             10       
  Column 5
      11    


另外一个例子,

r = [7 8 9 10 11];
t = [2, 3, 4, 5, 6];
res = r + t

MATLAB将执行上面的语句,并返回以下结果:

res =
  Columns 1 through 4
       9             11             13             15       
  Column 5
      17

创建列向量通过内附组方括号中的元素,使用分号(;)分隔的元素。

c = [7;  8;  9;  10; 11]


MATLAB将执行上面的语句,并返回以下结果:

c =
       7       
       8       
       9       
      10       
      11  


MATLAB创建矩阵


矩阵是一个二维数字阵列。

在MATLAB中,创建一个矩阵每行输入空格或逗号分隔的元素序列,最后一排被划定一个分号。

例如,下面创建了一个3×3的矩阵:

m = [1 2 3; 4 5 6; 7 8 9]


MATLAB执行上述语句,并返回以下结果:

m =
       1              2              3       
       4              5              6       
       7              8              9     


三、MATLAB命令


本节的内容将提供常用的一些MATLAB命令

在之前的篇章中我们已经知道了MATLAB数值计算和数据可视化是一个交互式程序,在它的命令窗口中您可以在MATLAB提示符“>>”下键入命令。


MATLAB管理会话的命令


MATLAB提供管理会话的各种命令。如下表所示:

命令 目的/作用
clc 清除命令窗口。
clear 从内存中删除变量。
exist 检查存在的文件或变量。
global 声明变量为全局。
help 搜索帮助主题。
lookfor 搜索帮助关键字条目。
quit 停止MATLAB。
who 列出当前变量。
whos 列出当前变量(长显示)。


MATLAB的系统命令


使用MATLAB的时候有一些系统命令可以方便我们的操作,如在当前的工作区中可以使用系统命令保存为一个文件、加载文件、显示日期、列出目录中的文件和显示当前目录等。

下表列举了一些MATLAB常用的系统相关的命令:

命令 目的/作用
cd 改变当前目录。
date 显示当前日期。
delete 删除一个文件。
diary 日记文件记录开/关切换。
dir 列出当前目录中的所有文件。
load 负载工作区从一个文件中的变量。
path 显示搜索路径。
pwd 显示当前目录。
save 保存在一个文件中的工作区变量。
type 显示一个文件的内容。
what 列出所有MATLAB文件在当前目录中。
wklread 读取.wk1电子表格文件。 


MATLAB输入和输出命令


MATLAB提供了以下输入和输出相关的命令:

命令 作用/目的
disp 显示一个数组或字符串的内容。
fscanf 阅读从文件格式的数据。
format 控制屏幕显示的格式。
fprintf 执行格式化写入到屏幕或文件。
input 显示提示并等待输入。
; 禁止显示网版印刷


fscanf和fprintf命令的行为像C scanf和printf函数。他们支持格式如下代码:

格式代码 目的/作用
%s 输出字符串
%d 输出整数
%f 输出浮点数
%e 显示科学计数法形式
%g %f 和%e 的结合,根据数据选择适当的显示方式


用于数字显示格式的函数有以下几种形式:

Format函数 最多可显示
format short 四位十进制数(默认)
format long 15位定点表示
format short e 五位浮点表示
format long e 15位浮点表示
format bank 两个十进制数字
format + 正,负或零
format rat 有理数近似
format compact 变量之间没有空行
format loose 变量之间有空行


MATLAB向量,矩阵和阵列命令


下表列出了MATLAB用于工作数组、矩阵和向量的各种命令:

命令 作用/目的
cat 连接数组
find 查找非零元素的索引
length 计算元素数量
linspace 创建间隔向量
logspace 创建对数间隔向量
max 返回最大元素
min 返回最小元素
prod 计算数组元素的连乘积
reshape 重新调整矩阵的行数、列数、维数
size 计算数组大小
sort 排序每个列
sum 每列相加
eye 创建一个单位矩阵
ones 生成全1矩阵
zeros 生成零矩阵
cross 计算矩阵交叉乘积
dot 计算矩阵点积
det 计算数组的行列式
inv 计算矩阵的逆
pinv 计算矩阵的伪逆
rank 计算矩阵的秩
rref 将矩阵化成行最简形
cell 创建单元数组
celldisp 显示单元数组
cellplot 显示单元数组的图形表示
num2cell 将数值阵列转化为异质阵列
deal 匹配输入和输出列表
iscell 判断是否为元胞类型 


MATLAB绘图命令


MATLAB提供了大量的命令绘制图表。下表列出了一些常用的命令绘制:

命令 作用/目的
axis 人工选择坐标轴尺寸
fplot 智能绘图功能
grid 显示网格线
plot 生成XY图
print 打印或绘图到文件
title 把文字置于顶部
xlabel 将文本标签添加到x轴
ylabel 将文本标签添加到y轴
axes 创建轴对象
close 关闭当前的绘图
close all 关闭所有绘图
figure 打开一个新的图形窗口
gtext 通过鼠标在指定位置放注文
hold 保持当前图形
legend 鼠标放置图例
refresh 重新绘制当前图形窗口
set 指定对象的属性,如轴
subplot 在子窗口中创建图
text 在图上做标记
bar 创建条形图
loglog 创建双对数图
polar 创建极坐标图像
semilogx 创建半对数图(对数横坐标)
semilogy 创建半对数图(对数纵坐标)
stairs 创建阶梯图
stem 创建针状图


四、MATLAB M-Files


我们一直强调MATLAB是一个功能强大的编程语言及交互式计算环境,之前学习的内容中,我们学会了在 MATLAB 命令提示符下输入命令,而且我们主要是把MATLAB环境作为一个计算器使用。其实,MATLAB 还允许写入到一个文件中的一系列命令和执行文件完整的单元,就好比是写一个函数,然后调用它。


在开始接下来的学习内容前,我们要先了解在 MATLAB 中的 M 文件有两种类型,详细内容请往下看:


MATLAB的 M 文件


MATLAB允许写两个程序文件:

  • 脚本 - 脚本文件 .m 扩展程序文件。在这些文件中写的一系列命令,想一起执行。脚本不接受输入和不返回任何输出。他们在工作区中的数据操作。
  • 函数 - 函数文件 .m 扩展程序文件。函数可以接受输入和返回输出。内部变量是本地的函数。


.m 文件不一定要使用 MATLAB 编辑器创建,其他任何的文本编辑器也是可以的。在本节中,我们将讨论的脚本文件。MATLAB 命令和函数调用的脚本文件包含多个连续的行。可以运行一个脚本,在命令行中键入其名称。


MATLAB创建并运行脚本文


创建脚本文件,需要使用文本编辑器。可以打开 MATLAB 编辑器,可使用两个方法:

  • 使用命令提示符
  • 使用IDE

如果是在命令提示符下使用命令提示符下,键入编辑。这将打开编辑器。可以直接键入编辑,然后在文件名( .m 扩展程序文件名)

edit 
Or
edit <filename>


上面的命令将在默认情况下,MATLAB 目录中创建文件。如果想存储在一个特定的文件夹中的所有程序文件,那么一定要提供整个路径。

让我们创建一个文件夹名为 progs。在命令提示符处键入以下命令(>>):

mkdir progs    % create directory progs under default directory
chdir progs    % changing the current directory to progs
edit  prog1.m  % creating an m file named prog1.m


如果首次创建的文件,MATLAB 会提示您进行确认。单击“Yes”。

92e74f223794418281b95459469d96d0_b2fa66dff95622b3ecc73019926bde19.png

另外,如果使用的是IDE,选择 NEW -> Script。这也打开编辑器,并创建一个文件名为命名。输入代码后可以命名并保存文件。

在编辑器中输入下面的代码:

NoOfStudents = 6000;
TeachingStaff = 150;
NonTeachingStaff = 20;
Total = NoOfStudents + TeachingStaff ...
    + NonTeachingStaff;
disp(Total);


创建和保存文件后,可以运行在两个方面:

  • 编辑器窗口中单击“Run”按钮或
  • 只要在命令提示符下键入文件名(不含扩展名):>> prog1


命令窗口提示显示的结果是:

6170


例子


我们在MATLAB中创建一个脚本文件,然后输入下面的代码:

a = 5; b = 7;
c = a + b
d = c + sin(b)
e = 5 * d
f = exp(-d)


编译并执行上述代码,会产生以下结果:

c =
    12
d =
   12.6570
e =
   63.2849
f =
   3.1852e-06

目录
相关文章
|
1月前
|
存储 数据处理 索引
MATLAB中的基本数据类型与变量操作
【10月更文挑战第1天】 MATLAB 是一种广泛应用于数学计算和科学研究的编程语言,其核心是矩阵运算。本文详细介绍了 MATLAB 中的基本数据类型,包括数值类型(如 `double` 和 `int`)、字符数组、逻辑类型、结构体、单元数组和函数句柄,并通过代码示例展示了变量操作方法。
111 0
|
3月前
|
JSON 数据格式 Python
【2023最新】Matlab 保存JSON数据集文件,并用Python读取
本文介绍了如何使用MATLAB生成包含数据和标签的JSON格式数据集文件,并展示了用Python读取该JSON文件作为训练集的方法。
128 1
|
6月前
|
机器学习/深度学习 数据安全/隐私保护 计算机视觉
matlab学习(二)
matlab学习(二)
|
3月前
Matlab批量修改指定文件下文件名
Matlab批量修改指定文件下文件名
179 1
|
3月前
|
存储 算法 Serverless
【matlab】matlab基于DTW和HMM方法数字语音识别系统(源码+音频文件+GUI界面)【独一无二】
【matlab】matlab基于DTW和HMM方法数字语音识别系统(源码+音频文件+GUI界面)【独一无二】
|
3月前
|
存储 Serverless
【matlab】matlab实现倒谱法基音频率检测和共振峰检测(源码+音频文件)【独一无二】
【matlab】matlab实现倒谱法基音频率检测和共振峰检测(源码+音频文件)【独一无二】
|
5月前
|
算法 计算机视觉 异构计算
基于FPGA的图像一维FFT变换IFFT逆变换verilog实现,包含tb测试文件和MATLAB辅助验证
```markdown ## FPGA 仿真与 MATLAB 显示 - 图像处理的 FFT/IFFT FPGA 实现在 Vivado 2019.2 中仿真,结果通过 MATLAB 2022a 展示 - 核心代码片段:`Ddddddddddddddd` - 理论:FPGA 实现的一维 FFT/IFFT,加速数字信号处理,适用于高计算需求的图像应用,如压缩、滤波和识别 ```
|
5月前
|
算法 计算机视觉 异构计算
基于FPGA的图像直方图均衡化处理verilog实现,包含tb测试文件和MATLAB辅助验证
摘要: 在FPGA上实现了图像直方图均衡化算法,通过MATLAB2022a与Vivado2019.2进行仿真和验证。核心程序涉及灰度直方图计算、累积分布及映射变换。算法旨在提升图像全局对比度,尤其适合低对比度图像。FPGA利用可编程增益器和查表技术加速硬件处理,实现像素灰度的均匀重分布,提升视觉效果。![image preview](https://ucc.alicdn.com/pic/developer-ecology/3tnl7rfrqv6tw_a075525027db4afbb9c0529921fd0152.png)
|
5月前
|
机器学习/深度学习 数据可视化 算法
探索MATLAB世界:掌握基础知识与实用技能(1. MATLAB环境与基本操作 2. 数据类型与变量 3. 条件与循环,1. 数据分析与统计 2. 图像处理与计算机视觉 3. 信号处理与控制系统)
探索MATLAB世界:掌握基础知识与实用技能(1. MATLAB环境与基本操作 2. 数据类型与变量 3. 条件与循环,1. 数据分析与统计 2. 图像处理与计算机视觉 3. 信号处理与控制系统)
54 0
|
6月前
|
算法 计算机视觉 异构计算
基于肤色模型的人脸识别FPGA实现,包含tb测试文件和MATLAB辅助验证
这是一个关于肤色检测算法的摘要:使用MATLAB 2022a和Vivado 2019.2进行测试和仿真,涉及图像预处理、RGB到YCbCr转换、肤色模型(基于阈值或概率)以及人脸检测。核心程序展示了如何读取图像数据并输入到FPGA处理,通过`tops`模块进行中值滤波、颜色空间转换及人脸检测,最终结果输出到&quot;face.txt&quot;。

热门文章

最新文章

下一篇
无影云桌面