MATLAB基本使用手册

表格最后几行为不常用的,重点查阅前面几行 (按照我自己平时用的频率为准,别杠)

目录

1 矩阵或数组相关

1.1 运算符

1.2 矩阵或数组命令

1.3 数组变换函数

1.4 特殊变量和常量

1.5 系统相关命令

 1.6 输入输出

1.7 数据类型

1.7.1 数据类型

1.7.2 数据类型转换

1.7.3数据类型确定

1.8 冒号符号

1.9 外部数据导入

2 绘图

 3 其他常用函数


1 矩阵或数组相关

1.1 运算符

运算符功能
+标量或矩阵加法
-标量或矩阵减法
*标量或矩阵乘法
.*数组乘法(对应位置和对应位置相乘)
^标量或矩阵求幂
.^数组求幂(数组内每个元素单独求幂)
/标量或矩阵右除
./数组右除(对应位置相除)
()下标运算;参数定义
[ ]定义矩阵
;语句结束;分行;该行输出不显示
%注释标志
=赋值,if判定相等要用“==”
<小于
<=小于等于
>大于
>=大于等于
~=不等于
\矩阵左除
.\数组左除(对应位置左除)
向量生成,子阵提取
_引用符号和转置运算符
._非共轭转置运算符
...续行标志(本行写不玩了,我去下一行接着写)
矩阵的转置
.’数组的转置

                      注:做点乘或点除(.*或./)时,两个矩阵的维度要完全一致。

1.2 矩阵或数组命令

命令作用
linspace创建等间隔向量
longspace创建对数间隔向量
length计算元素数量
ndims数组维数
max返回最大值
min返回最小值
size计算数组大小

sum

求和
ones生成全1矩阵
zeros生成全0矩阵
reshape重新调整矩阵维度,行数,列数
find查找非零元素的索引

cat

连接数组
prod计算数组元素连乘积
sort排序每个列
eye创建一个单位矩阵
cross计算矩阵交叉乘积
dot计算矩阵点积
det计算数组行列式(三行四列行列式?)
inv计算矩阵的逆
pinv计算矩阵的伪逆
rank

计算矩阵的秩

rref将矩阵化成行最简形
cell创建单元数组
celldisp显示单元数组
cellplot显示单元数组的图形表示
num2cell将数值阵列转化为异质阵列
deal匹配输入和输出列表
iscell判断是否为元胞类型
diag矩阵的对角矩阵和对角线

1.3 数组变换函数

函数作用
length矢量长度或最大阵列尺寸
ndims数组维数
numel数组元素数目
size数组维度
repmat复制和平铺数组
reshape重塑数组
cirshift循环移位
ctranspose复数共轭转置
diag矩阵的对角矩阵和对角线
flipdim沿指定维度反转数组
fliplr从左到右翻转矩阵
flipud将矩阵向下翻转
ipermuten维阵列的反置换维数
permute重新排列N维数组的维数
rot90旋转矩阵90度
shiftdim移位维度
issorted确定集合元素是否按顺序排序排列
sort按升序或降序对数组元素进行排序
sortrows按升序对行排序
squeeze删除单维度
transpose转置
vectorize矢量化表达式

1.4 特殊变量和常量

变/常量名meaning
ans默认的变量名,以应答最近的操作结果
i,j虚数单位,若与所定义变量冲突可用1i或1j(是yi不是aio)
Inf无穷大
NaN不定值(不是数字)
pi圆周率
exp自然底数e
eps浮点数的相对误差

1.5 系统相关命令

命令意义
clear清空工作区(从内存中删除变量)
clc清除命令行
help帮助
who列出当前变量
whos列出当前变量(长显示)
delete删除一个文件
path显示搜索路径
pwd显示当前目录
save保存在一个文件中的工作区变量
exist检查存在的文件和变量
global声明全局变量
quit停止MATLAB
cd改变当前目录(和cmd一个用法)
date显示当前日期


 1.6 输入输出

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

其中fscanf和fprintf与C用法类似,输出元素支持的格式如下: 

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

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

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

1.7 数据类型

1.7.1 数据类型

数据类型描述
int88 位有符号整数
unit88 位无符号整数
int1616 位有符号整数
unit1616 位无符号整数
int3232 位有符号整数
unit3232 位无符号整数
int6432 位有符号整数
unit6432 位无符号整数
signal单精度数值
double双精度数值
logical逻辑值为0或1,分别代表false和true
char字符数据

1.7.2 数据类型转换

函数描述
char转换为字符数组(字符串)
int2str将整数数据转换为字符串
mat2str将矩阵转换为字符串
num2str将数字转换为字符串
str2double将字符串转换为双精度值
str2num将字符串转换为数字
native2unicode将数字字节转换为Unicode字符
unicode2native将Unicode字符转换为数字字节
base2dec将基数N字符串转换为十进制数
bin2dec将二进制转换为十进制数
dec2base将十进制转换为字符串中的N数字
dec2bin将十进制转换为字符串中的二进制数
dec2hex将十进制转换为十六进制
hex2dec将十六进制数字字符串转换为十进制数
hex2num将十六进制数字字符串转换为双精度数字
num2hex将单数转换为IEEE十六进制字符串
cell2mat将单元格数组转换为数组
cell2struct将单元格数组转换为结构数组
cellstr从字符数组创建字符串数组
mat2cell将数组转换为具有潜在不同大小的单元格的单元阵列
num2cell将数组转换为具有一致大小的单元格的单元阵列
struct2cell将结构转换为单元格数组

1.7.3数据类型确定

函数说明
is检测状态
isa确定输入是否是指定类的对象
iscell确定输入是单元格数组
iscellstr确定输入是字符串的单元格数组
ischar确定输入是否是字符数组
isfield确定输入是否是结构数组字段
isfloat确定输入是否是浮点数组
ishghandle确定是否用于处理图形对象句柄
isinteger确定输入是否为整数数组
isjava确定输入是否为java对象
islogical确定输入是否为逻辑数组
isnumeric确定输入是否为数字数组
isobject确定输入是否为MATLAB对象
isreal检查输入是否为实数数组
isscalar确定输入是否为标量
isstr确定输入是否为字符数组
isstruct确定输入是否为结构数组
isvector确定输入是否为向量
class确定对象的类
validateattributes检查数组的有效性
whos在工作区中列出变量,其大小和类型

1.8 冒号符号

格式作用
A(:,j)A的第j列所有元素
A(i,:)A的第i行所有元素
A(:,:)与A等效的二维数组
A(j:k)

A(j),A(j+1),...A(k)

A(:,j:k)A(:,j),A(:,j+1)...A(:,k)
A(:,:,k)三维数组A的第k页
A(i,j,k,:)四维数组A的A(i,j,k,1),A(i,j,k,2)...
A(:)A的所有元素,被视为单列

1.9 外部数据导入

函数作用
A=importdata(filename)将数据从文件名所表示的文件中加载到数组A中
A=importdata('pastespical')从系统剪切板加载数据,而不是从文件中
A=importdata(_,delimiterln)将delimiterln解释为ASCII文件、文件名或剪切板数据中的列分隔符,可将delimiterln与上述语法中的任何输入参数一起使用。
A=importdata(_,delimiterln,headerlinesln)从ASCII文件、文件名或剪切板加载数据,并从lineheaderlinesln+1开始读取数字数据
[A,delimiterOut,headerlinesOut]=importdata(_)在分隔符输出中返回检测到的分隔符字符,并使用前面语法中的任何输入参数检测headerlinesOut中检测到的标题行数

        MATLAB 中 importdata 函数是一个高层次的函数。如果要处理低级别的文件,在MATLAB中的 I / O 功能允许读取或写入数据到一个文件中的大部分控制权。但是,使用这些功能的要求是这些文件需要具有更加详细的信息,这样能够提高工作效率。

        MATLAB字节或字符的读取和写入操作提供了以下功能:

函数描述
fclose关闭一个或全部已打开的文件
feof测试文件结尾
ferror有关文件I/O错误的信息
fgetl从文件读取行,删除换行符
fgets从文件读取行,保留换行符
fopen打开文件,或获取有关打开的文件的信息
fprintf将数据写入文本文件
fread从二进制文件读取数据
frewind将文件位置指示器移动到打开文件的开头
fscanf从文本文件读取数据
fseek移动到文件中的指定位置
ftell获得打开文件的位置
fwrite将数据写入二进制文件

2 绘图

绘图妹有嘛好说的,基本常用的就一个烂怂plot/plot3,其他的可有可无的,下面上一个表:

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

        如果要将几个图画到同一坐标系下可用hold on,若要将横轴纵轴的定标系数设成相同值可用axis equal,若要将当前坐标系图形设置为方形并且横轴及纵轴比例是1:1可用axis square。画三维图可用plot3.

画完图得上色儿吧,下面是拔种上色对应的代码:

色儿代码
whitew
blackk
blueb
redr
cyanc
greeng
magentam
yellowy

 3 其他常用函数

函数作用
solve解方程
limit求极限
sin/cos/tan三角函数
asin/acos/atan反三角,生成弧度值
asind/acosd/atand反三角,生成角度值
rad2deg弧度转换为角度
deg2rad角度转为弧度
rand生成随机数
conv卷积
fft/ifft快速傅里叶变换/反变换
std求标准差
mean求均值
log求对数
gamma伽马函数
gammainc不完全伽马函数(默认为下不完全,若要绘制上不完全gamma函数绘图时需要加“upper”)
conj复共轭
fix向0取整
floor向下取整
abs取模
drawnow更新图窗并处理回调(画动态图)
mod除后的余数
待定待定

目前常用的已总结这些。后面再有遇到新的在往上添。

  • 7
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值