MATLAB R2012a 基础教程
本教程旨在帮助初学者快速入门 MATLAB R2012a,内容涵盖环境介绍、基本操作、矩阵运算、数据可视化、脚本编写和函数创建等核心概念。

第一章:MATLAB R2012a 简介
1 什么是 MATLAB? MATLAB 的名字来源于 "MATrix LABoratory"(矩阵实验室),它是一种高性能的第四代编程语言,主要用于数值计算、数据分析、算法开发和可视化,它集成了计算、可视化和编程于一个易于使用的环境中,主要面向科学和工程计算。
2 MATLAB R2012a 的工作环境 启动 MATLAB R2012a 后,你会看到以下几个主要窗口:
- Command Window (命令窗口):这是与 MATLAB 交互的主要界面,你可以在这里直接输入命令,并立即看到结果,它就像一个超级计算器。
- Current Folder (当前文件夹):显示当前 MATLAB 正在工作的文件夹路径,你可以在这里看到所有文件和文件夹,类似于 Windows 的资源管理器。
- Workspace (工作区):显示当前工作内存中所有变量的名称、值和数据类型,你在命令窗口创建的所有变量都会出现在这里。
- Command History (命令历史记录):记录你在命令窗口中执行过的所有命令,你可以双击历史记录中的命令来重新执行它。
第二章:MATLAB 基础操作
1 作为计算器使用 MATLAB 可以像计算器一样进行基本运算。
% 加法 5 + 3 % 减法 10 - 4 % 乘法 2 * 6 % 除法 15 / 3 % 幂运算 2^3
2 变量与赋值 在 MATLAB 中,变量无需预先声明类型,使用 进行赋值。

% 创建一个名为 x 的变量,并赋值为 10 x = 10; % 创建一个字符串变量 name = 'Zhang San'; % 查看变量的值 x name % 在工作区中可以看到这些变量
3 注释 使用 来注释单行代码,解释代码的作用,注释部分不会被 MATLAB 执行。
% 这是一个注释,用来解释下面的代码 a = 5; % 这也是注释,解释这行代码的作用
4 常用内置函数 MATLAB 提供了大量内置函数。
% 数学函数 sin(pi/2) % 正弦,pi 是内置的圆周率常量 cos(0) % 余弦 sqrt(16) % 平方根 exp(1) % 自然指数 e^1 log(10) % 自然对数 log10(100) % 以10为底的对数 % 其他函数 max([1, 5, 3]) % 找出最大值 min([1, 5, 3]) % 找出最小值 sum([1, 2, 3]) % 求和 mean([1, 2, 3]) % 求平均值
第三章:矩阵与数组操作
这是 MATLAB 的核心,在 MATLAB 中,所有变量本质上都是矩阵(或数组)。
1 创建矩阵

- 行向量:用空格或逗号分隔元素。
- 列向量:用分号分隔元素。
- 矩阵:用分号分隔行,用空格或逗号分隔列。
% 创建一个行向量 v_row = [1, 2, 3, 4] % 创建一个列向量 v_col = [1; 2; 3; 4] % 创建一个 2x3 矩阵 A = [1, 2, 3; 4, 5, 6] % 创建特殊矩阵 zeros(2, 3) % 创建一个 2x3 的全零矩阵 ones(3, 2) % 创建一个 3x2 的全一矩阵 eye(3) % 创建一个 3x3 的单位矩阵 rand(2, 2) % 创建一个 2x2 的随机矩阵 (0-1之间均匀分布)
2 矩阵索引与访问
使用 A(row, col) 来访问矩阵中的元素。
A = [1, 2, 3; 4, 5, 6]; % 访问第 2 行,第 3 列的元素 element = A(2, 3) % 结果是 6 % 访问整个第 1 行 row1 = A(1, :) % 冒号 : 表示所有列 % 访问整个第 2 列 col2 = A(:, 2) % 冒号 : 表示所有行 % 访问一个子矩阵 (第 1 到 2 行,第 2 到 3 列) submatrix = A(1:2, 2:3)
3 矩阵运算
- 元素级运算:使用 , ,
.^(注意前面的点) - 矩阵运算:使用 , ,
^
A = [1, 2; 3, 4]; B = [5, 6; 7, 8]; % 元素级乘法 (对应元素相乘) C_element = A .* B % 结果是 [1*5, 2*6; 3*7, 4*8] = [5, 12; 21, 32] % 矩阵乘法 (线性代数中的乘法) C_matrix = A * B % 结果是 [1*5+2*7, 1*6+2*8; 3*5+4*7, 3*6+4*8] = [19, 22; 43, 50] % 矩阵转置 A_transpose = A' % 结果是 [1, 3; 2, 4]
第四章:数据可视化
MATLAB 拥有强大的绘图功能。
1 基本二维绘图:plot 函数
plot 函数是最基本的绘图函数。
% 创建 x 和 y 数据
x = 0:0.1:2*pi; % 从 0 到 2*pi,步长为 0.1
y = sin(x);
% 绘制 y x 的图形
plot(x, y);
和坐标轴标签'正弦函数曲线'); % R2012a 中,title 函数直接接受中文
xlabel('x 轴');
ylabel('y 轴');
% 显示网格
grid on;
执行后,会弹出一个图形窗口,显示一条正弦曲线。
2 绘制多条曲线
可以在同一个 plot 命令中绘制多条曲线。
x = 0:0.1:2*pi;
y1 = sin(x);
y2 = cos(x);
% 同时绘制 sin 和 cos 曲线
plot(x, y1, 'r-', x, y2, 'b--');
% 添加图例
legend('sin(x)', 'cos(x)');
和标签'正弦和余弦函数');
xlabel('x 轴');
ylabel('y 轴');
grid on;
'r-' 表示红色实线,'b--' 表示蓝色虚线。
3 其他常用绘图函数
scatter(x, y): 散点图bar(y): 条形图hist(y): 直方图pie(data): 饼图
第五章:脚本文件
在命令窗口中输入命令适合简单的计算,但对于复杂的任务,我们需要使用脚本文件(Script),脚本文件是一个扩展名为 .m 的文本文件,它包含一系列 MATLAB 命令。
1 创建和运行脚本
- 点击 MATLAB 主界面的 New Script 按钮。
- 在打开的编辑器中输入你的代码。
- 点击 Save 按钮,将文件保存为
my_script.m。 - 点击编辑器上的 Run 按钮,或在命令窗口中输入
my_script来执行脚本。
示例脚本 (my_script.m):
% 这是一个计算并绘制正弦和余弦函数的脚本
% 作者:Your Name
% 日期:2025-10-27
% 清除工作区和命令窗口
clear; % 清除所有变量
clc; % 清空命令窗口
% 定义 x 的范围
x = 0:0.1:2*pi;
% 计算 y 值
y_sin = sin(x);
y_cos = cos(x);
% 创建新图形窗口
figure; % figure 命令用于创建一个新的图形窗口,避免覆盖旧图
% 绘制图形
plot(x, y_sin, 'r-', x, y_cos, 'b--');
% 添加装饰'正弦和余弦函数');
xlabel('x (弧度)');
ylabel('幅值');
legend('sin(x)', 'cos(x)');
grid on;
axis([0 2*pi -1.2 1.2]); % 设置坐标轴范围
第六章:函数文件
函数是接受输入参数、执行特定操作并返回输出值的代码块,它们是模块化编程的基础。
1 创建函数文件
函数文件也是一个 .m 文件,但其第一行必须以 function 关键字开头。
示例:创建一个计算平均值的函数 (my_average.m)
function y = my_average(x)
% my_average 计算一个向量的平均值
% y = my_average(x) 返回向量 x 的平均值
%
% 输入:
% x - 一个数值向量
%
% 输出:
% y - x 的平均值
% 检查输入是否为向量
if ~isvector(x)
error('输入必须是一个向量。');
end
% 计算平均值
y = sum(x) / length(x);
end % 函数必须以 end 结束
2 使用函数 在命令窗口或脚本中调用这个函数。
% 创建一个测试向量 data = [10, 20, 30, 40, 50]; % 调用我们自定义的函数 avg_value = my_average(data); % 显示结果 disp(['数据的平均值是: ', num2str(avg_value)]);
num2str 函数用于将数字转换为字符串,以便 disp 函数可以显示。
第七章:控制流
使用控制流语句可以控制代码的执行顺序。
1 条件语句:if, elseif, else
score = 85;
if score >= 90
disp('成绩: 优秀');
elseif score >= 80
disp('成绩: 良好');
elseif score >= 60
disp('成绩: 及格');
else
disp('成绩: 不及格');
end
2 循环语句
-
for循环:用于已知循环次数的情况。sum = 0; for i = 1:10 % i 从 1 循环到 10 sum = sum + i; end disp(['1到10的和是: ', num2str(sum)]); -
while循环:用于未知循环次数,但满足某个条件的情况。count = 0; while count < 5 count = count + 1; disp(['循环次数: ', num2str(count)]); end
第八章:获取帮助
MATLAB 自带了非常完善的帮助文档,学会使用它至关重要。
-
命令窗口输入
help: 在命令窗口中直接输入help后跟函数名,可以查看该函数的简要帮助信息。help plot
-
命令窗口输入
doc: 输入doc后跟函数名,会打开一个更详细的帮助窗口,包含函数描述、语法、示例和相关的函数链接。doc plot
-
使用帮助浏览器: 点击 MATLAB 主界面上的 (Help) 图标,可以打开完整的帮助文档,你可以通过搜索和目录来查找你需要的内容。
总结与进阶
本教程涵盖了 MATLAB R2012a 的最核心的基础知识,要成为一名熟练的 MATLAB 用户,你需要:
- 多加练习:尝试自己编写脚本和函数来解决实际问题。
- 学习更多工具箱:根据你的专业领域(如信号处理、图像处理、控制系统、机器学习等),学习使用相应的工具箱。
- 阅读他人代码:在 MathWorks File Exchange 等网站上寻找开源项目,学习他人的编程技巧和思路。
希望这份教程能帮助你顺利开启 MATLAB 的学习之旅!
