MATLAB R2011a 基础教程
本教程旨在帮助初学者快速上手 MATLAB R2011a,内容涵盖环境介绍、基本操作、矩阵运算、绘图和简单的编程。

第一部分:初识 MATLAB 环境
当你启动 MATLAB R2011a 时,会看到以下几个主要窗口:
-
Command Window (命令窗口)
- 这是 MATLAB 的核心,你可以在这里直接输入命令并立即看到结果。
- 就像一个超级计算器。
-
Current Folder (当前文件夹)
- 显示你当前正在工作的文件夹中的所有文件和子文件夹。
- 你创建的脚本(.m文件)、数据等都会保存在这里。
-
Workspace (工作区)
(图片来源网络,侵删)- 显示当前内存中所有变量的名称、大小、字节数和类型。
- 你在命令窗口中创建的所有变量都会出现在这里。
-
Command History (命令历史记录)
- 记录你在命令窗口中执行过的所有命令。
- 你可以双击之前的命令来重新执行,这对于调试和重复操作非常方便。
第二部分:MATLAB 作为计算器使用
在命令窗口中,你可以直接进行数学运算。
% 这是注释,MATLAB 会忽略它
% 1. 基本算术
>> 2 + 3
ans =
5
>> 5 * 10 - 4
ans =
46
>> 2^10 % 2的10次方
ans =
1024
% 2. 变量赋值
>> x = 10;
>> y = 20;
>> z = x + y
z =
30
% 注意:分号 的作用是抑制输出,不显示计算结果。
% 在脚本中,使用分号可以避免屏幕被大量输出刷屏。
% 3. 查看变量
>> who % 列出工作区中的所有变量
Your variables are:
x y z
>> whos % 更详细地列出变量信息
Name Size Bytes Class Attributes
x 1x1 8 double
y 1x1 8 double
z 1x1 8 double
% 4. 清除变量
>> clear x % 清除变量 x
>> who
Your variables are:
y z
>> clear % 清除工作区中的所有变量
>> who
>>
第三部分:MATLAB 的核心 - 矩阵
MATLAB 的名字来源于 "MATrix LABoratory"(矩阵实验室),矩阵是 MATLAB 最基本的数据结构。
创建矩阵
% 创建一个 2x3 的矩阵 (2行3列)
>> A = [1, 2, 3; 4, 5, 6]
A =
1 2 3
4 5 6
% 创建一个行向量 (1x3 矩阵)
>> v = [10, 20, 30]
v =
10 20 30
% 创建一个列向量 (3x1 矩阵)
>> u = [10; 20; 30]
u =
10
20
30
% 创建特殊矩阵
>> B = zeros(2, 3) % 创建一个 2x3 的全零矩阵
B =
0 0 0
0 0 0
>> C = ones(3, 2) % 创建一个 3x2 的全一矩阵
C =
1 1
1 1
1 1
>> D = eye(3) % 创建一个 3x3 的单位矩阵
D =
1 0 0
0 1 0
0 0 1
>> E = magic(3) % 创建一个 3x3 的魔方阵 (每行、每列、对角线之和相等)
E =
8 1 6
3 5 7
4 9 2
矩阵索引
访问矩阵中的元素,使用 A(row, column) 格式。

>> A = [1, 2, 3; 4, 5, 6];
% 访问第 2 行,第 3 列的元素
>> A(2, 3)
ans =
6
% 访问第 1 行的所有元素
>> A(1, :)
ans =
1 2 3
% 访问第 2 列的所有元素
>> A(:, 2)
ans =
2
5
% 修改元素
>> A(1, 1) = 100;
>> A
A =
100 2 3
4 5 6
矩阵运算
>> A = [1, 2; 3, 4];
>> B = [5, 6; 7, 8];
% 矩阵加法 (维度必须相同)
>> C = A + B
C =
6 8
10 12
% 矩阵乘法 (注意:不是 .* 元素乘法)
>> D = A * B
D =
19 22
43 50
% 元素乘法 (对应元素相乘)
>> E = A .* B
E =
5 12
21 32
% 元素幂运算
>> F = A .^ 2
F =
1 4
9 16
% 矩阵转置
>> G = A'
G =
1 3
2 4
第四部分:脚本文件 (.m 文件)
对于复杂的任务,直接在命令窗口输入命令很不方便,我们可以将命令写入一个脚本文件,然后运行它。
- 点击工具栏的 New Script 按钮,打开编辑器。
- 在编辑器中输入以下代码:
% my_first_script.m
% 这是一个简单的脚本文件,用于计算并绘制正弦波
% 清理工作区和命令窗口
clear;
clc;
% 1. 创建数据
x = 0:0.1:2*pi; % 从 0 到 2*pi,步长为 0.1
y = sin(x);
% 2. 绘制图形
plot(x, y);
% 3. 添加标题和标签'正弦波曲线'); % 在 R2011a 中,中文字符支持可能不佳,建议使用英文
xlabel('x 轴');
ylabel('y 轴');
grid on; % 显示网格
- 点击编辑器工具栏的 Save 按钮,将文件保存为
my_first_script.m到你的当前文件夹。 - 回到 MATLAB 主界面,在命令窗口输入
my_first_script并按回车,或点击编辑器中的 Run 按钮。
你会看到一个图形窗口弹出,显示正弦波曲线。
第五部分:绘图功能
MATLAB 拥有强大的绘图功能。
基本二维绘图
plot 函数是最常用的绘图函数。
% 创建 x 和 y 数据
x = -10:0.1:10;
y1 = x.^2;
y2 = -x.^2 + 50;
% 在同一个图上绘制两条曲线
figure; % 创建一个新的图形窗口
plot(x, y1, 'r-', x, y2, 'b--'); % 'r-' 红色实线, 'b--' 蓝色虚线
% 添加图例
legend('y = x^2', 'y = -x^2 + 50');
和标签'二次函数曲线');
xlabel('x');
ylabel('y');
grid on;
axis equal; % 使坐标轴比例相同
其他常用图形
% 创建一些随机数据
data = randn(100, 1); % 100个标准正态分布的随机数
% 绘制直方图
figure;
hist(data);'数据直方图');
xlabel('数值');
ylabel('频数');
% 绘制散点图
x = randn(100, 1);
y = 2*x + randn(100, 1);
figure;
scatter(x, y);'散点图');
xlabel('X 变量');
ylabel('Y 变量');
第六部分:控制流
像其他编程语言一样,MATLAB 也支持 if, for, while 等控制流语句。
if-elseif-else 语句
score = 85;
if score >= 90
disp('成绩: 优秀');
elseif score >= 80
disp('成绩: 良好');
elseif score >= 60
disp('成绩: 及格');
else
disp('成绩: 不及格');
end
输出:
成绩: 良好
for 循环
% 计算 1 到 10 的和
sum = 0;
for i = 1:10
sum = sum + i;
end
disp(['1到10的和是: ', num2str(sum)]);
输出:
1到10的和是: 55
while 循环
% 计算 2 的多少次方大于 1000
power = 0;
result = 1;
while result <= 1000
power = power + 1;
result = 2^power;
end
disp(['2的', num2str(power), '次方(', num2str(result), ')首次大于1000。']);
输出:
2的10次方(1024)首次大于1000。
第七部分:获取帮助
MATLAB 自带非常完善的帮助文档,学会使用帮助是学习 MATLAB 的关键。
-
在命令窗口中使用
help和doc命令help:在命令窗口显示简洁的帮助信息。doc:在独立的帮助窗口中显示详细的文档,并包含示例。
>> help plot % 在命令窗口查看 plot 函数的帮助 >> doc plot % 在帮助窗口中详细查看 plot 函数
-
使用帮助导航器 (Help Navigator)
- 在 MATLAB 界面的主菜单中选择 Help -> Product Help。
- 这里可以按主题、函数名等搜索,是学习函数和工具箱最全面的方式。
总结与建议
- 动手实践:MATLAB 是一门实践性很强的语言,教程中的每一个例子都建议你亲手敲一遍,观察结果。
- 从简单开始:先掌握基本操作和矩阵运算,再逐步学习脚本、函数和复杂绘图。
- 利用帮助:遇到任何不懂的函数,第一反应应该是
doc function_name。 - 注意版本差异:如果你使用的是现代 MATLAB 版本,界面会更美观(使用功能区 UI),新增了许多便捷的功能和函数,但 R2011a 的核心语法和逻辑是相通的,学习这个版本后,过渡到新版本会非常容易。
希望这份教程能帮助你顺利入门 MATLAB R2011a!
