MATLAB 2018a 官方教程(一)

this is the seventh passage of HEXO
SEVO 实验室

前言

下面列出了常用的,包括实用项目

界面操作命令

clear 清除变量空间
clc 情空工作空间
内建变量 pi
内建函数 abs sqrt

1
>> z = sqrt(-9)

变量:矩阵

创建变量
1
2
3
[2 3 4] # row
[2; 3; 4] #col
[sqrt(10) pi^2] # 可以计算
1
2
x=1:3 #
x=1:0.5:5 #
1
x=linspace(1,10,5)
转置
1
x=x'
创建随机数
1
2
x = rand(s) #5*5矩阵
y = rand(5,1) # 5*1
0矩阵
1
x = zeros(6,3)
保存/载入变量空间
1
2
>> save datafile # datafile.mat
>> load datafile # 载入里面的变量
加载其他文件的数据

1.选择txt这类的文件
2.选择加载后的变量类型和变量名字
3.加载

提取矩阵数据
1
2
3
4
x = data(6,3)
y = data(end,3)
z = data(end-1,3)
p = data(:,2) # : 包括一整溜
矩阵的标量计算

可以仿照python的广播机制

1
2
.*  看作普通乘法
* 看作是矩阵乘法

一些矩阵函数

size函数可以应用于数组以产生包含数组大小的单个输出变量
size函数可应用于矩阵以生成单个输出变量或两个输出变量。使用方括号([])获取多个输出
max函数的第一个输出是输入向量的最大值。当用两个输出调用时,第二个输出是索引值

文档
1
doc max
绘图
1
plot(x,y,'r--*')

要在另一条线上绘制一条线,请使用hold on命令在添加另一条线时保留上一个绘图。也可以使用hold off命令返回默认行为。
需要查阅关于绘图的一些默认单词

1
close all # 关闭所有的图

可以用一个向量画一个直线

1
plot(v)

绘图函数接受由属性名称和相关值组成的可选附加输出

1
plot (y,'LineWidth',5)

加标题

1
title('Sample Densities')

增加轴标题

1
ylabel('Density (g/cm^3)')

工具栏目绘制图:选择变量,选择图;

项目

增加曲线说明

1
legend('a','b','c')

傅里叶变换

1
fft()

得到向量的数量

1
n = numel(y)

完整项目:音频

1
2
3
4
5
6
7
fs = 10 #音频信号的采样频率。
t = 0:1/fs:20; #音频信号采集时间。
y = sin(1.8*2*pi*t) + sin(2.1*2*pi*t): #音频信号幅度在每个采样。
yfft = fft(y); # y的傅里叶变换
n = numel(y);
f = 0:fs/n:fs*(n-1)/n; #与yfft中的值对应的频率。
plot(f,abs(yfft))

逻辑运算符

和python的一样
&|写一个就行了
逻辑矩阵可以选择出true的数据

1
v1(v1==4) = 10