MATLAB基本语法

学习网站为https://matlabacademy.mathworks.com/R2019a/cn/portal.html?course=gettingstarted&s_tid=course_mlor_start1,需注册。命令中有分号则只记录不输出。
1、>>输入命令
2、x=5 赋值
3、具有内置的常数和函数,比如abs(),sqrt(),pi
4、每一个变量都是一个数组。
X=[1 2 3] 一行一列
X=[1;2;3]一行三列
X=1:3 结果为x=1 2 3
X=1:2:5结果为x=1 3 5

x = linspace(0,1,5)
x =
0 0.250 0.500 0.750 1.000

x = 1:3;
x = x’
x =
1
2
3

x = (1:2:5)’
x =
1
3
5
5、保存和加载变量

save foo x
以上命令将名为 x 的变量保存到名为 foo.mat 的 MAT 文件中
使用 load 命令从 MAT 文件加载变量。

load foo
6、对数组进行索引

x = A(5,7);
此语法将会提取 A 的第 5 行第 7 列的值,然后将结果赋给变量 x。
end,作为行或列索引来引用最后一个元素。

x = A(end,2);
可以将算术运算与关键字 end 结合使用。例如:

x = A(end-1,end-2)
x = A(2,:)
x = A(1:3,:)
创建一个包含矩阵 A 的第 1 行、第 2 行和第 3 行所有元素的矩阵。

x = v(3)
会返回向量 v 的第 3 个元素(当 v 为行向量或列向量时)。

x = v(3:end)
返回向量 v 的一个子集,其中包含从第三个到最后一个元素范围内的所有元素。
A(2,5) = 11可以通过组合使用索引与赋值来修改变量的元素。
7、数组计算

y = x + 2
将一个标量值与数组中的所有元素相加。

z = x + y
z = 2*x
y = x/3
可以将任意两个大小相同的数组相加。
可以将数组中的所有元素与某个标量相乘或相除。

xMax = max(x)
可以使用 max 函数来确定向量的最大值。

xSqrt = sqrt(x)
可在单个命令中对整个向量或值数组执行数学运算。
.* 运算符执行按元素乘法,允许您将两个大小相同的数组的对应元素相乘。

z = [3 4] .* [10 20]
z =
30 80
8、调用函数
size 函数可以应用于数组,以生成包含数组大小的单个输出变量。

s = size(x)

size 函数可以应用于矩阵,以生成单个输出变量或两个输出变量。使用方括号 ([ ])获取多个输出。

[xrow,xcol] = size(x)

可以使用 max 函数确定向量的最大值及其对应的索引值。max 函数的第一个输出为输入向量的最大值。执行带两个输出的调用时,第二个输出为索引值。

[xMax,idx] = max(x)

9、绘制数据图
当在 x 轴上绘制 a 并在 y 轴上绘制 b 时,请使用以下语法 plot(a,b)

plot 函数接受一个附加参数,该参数能够在单引号中使用各种符号来指定颜色、线型和标记样式。

plot(x,y,‘r–o’)

以上命令将会绘制一条红色 (r) 虚线 (--),并使用圆圈 (o) 作为标记。可以在线条设定的文档中了解有关可用符号的详细信息。

使用 hold on 命令保留之前的绘图,然后添加另一条线

当单独绘制一个向量时,MATLAB 会使用向量值作为 y 轴数据,并将 x 轴数据的范围设置为从 1 到 n(向量中的元素数目)。

plot 函数接受可选的附加输入,这些输入由一个属性名称和一个关联的值组成。

plot(y,‘LineWidth’,5)

使用 plot 函数时,您可在绘图参数和线条设定符之后添加属性名称-属性值对组。

plot(x,y,‘ro-’,‘LineWidth’,5)

可以使用绘图注释函数(例如 title)在绘图中添加标签。这些函数的输入是一个字符串。MATLAB 中的字符串是用单引号 (’) 引起来的。

title(‘Plot Title’)

关系运算符(例如 >、<、== 和 ~=)执行两个值之间的比较。相等或不相等比较的结果为 1 (true) 或 0 (false)。

Test=pi>3,结果为test=1

可以使用关系运算符将某个向量或矩阵与单个标量值进行比较。结果是与原始数组相同大小的逻辑数组。

[5 10 15] > 12
ans =
0 0 1

MATLAB 包含 AND (&) 和 OR (|) 等逻辑运算符,可将多个逻辑条件组合在一起。如果两个元素都为 true,& 运算符将返回 true (1),否则返回 false (0)。例如:

x = (pi > 5) & (0 < 6)
x =
0

以下示例将会提取 v1 中大于 6 的所有元素。

v = v1(v1 > 6)
v =
6.6678
9.0698

要将数组 x 中等于 999 的所有值都替换为 0,请使用以下语法。

x(x==999) = 0

每个 if 语句都必须包含一个 if 关键字和一个 end 关键字,只有满足条件时,才会执行 if 和 end 关键字之间的代码。

x = rand;
	if x > 0.5
   		 y = 3; %只有 x > 0.5 才会执行
	else
		y=1;
	end
		
		for i = 1:3
    		disp(i)
end
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页