本教程将从 零基础 开始,逐步引导您了解 MATLAB 的基本概念、操作和编程技巧。

MATLAB R2025a 完整入门教程
第一部分:初识 MATLAB
什么是 MATLAB?
MATLAB 的名字来源于 "MATrix LABoratory"(矩阵实验室),它是一种高级的、面向科学计算和工程仿真的第四代编程语言,其主要特点包括:
- 强大的数值计算能力:以矩阵为基本数据单位,非常适合处理线性代数、信号处理、数据分析等问题。
- 丰富的可视化功能:可以轻松绘制二维、三维图形,帮助用户直观地理解数据和结果。
- 大量的工具箱:提供了针对不同专业领域的工具箱,如信号处理、图像处理、控制系统、神经网络等,极大地扩展了其功能。
- 友好的交互式环境:集成了命令行窗口、脚本编辑器、工作区、图形窗口等,方便用户进行交互式操作和开发。
MATLAB R2025a 的工作环境
启动 MATLAB R2025a 后,您会看到以下几个主要窗口:
-
Command Window (命令行窗口):
- 这是与 MATLAB 交互的主要界面,您可以直接在这里输入命令,MATLAB 会立即执行并显示结果。
- 输入
1+1,然后按Enter,会显示ans = 2。ans是默认的变量名,用于存储未指定名称的计算结果。
-
Current Folder (当前文件夹):
(图片来源网络,侵删)- 显示当前 MATLAB 正在操作的文件夹中的文件和子目录。
- 您可以在这里浏览、打开、运行脚本文件(
.m文件)。
-
Workspace (工作区):
- 显示当前工作内存中所有变量的名称、大小、字节数和类型(如
double,char,struct等)。 - 您可以查看、修改、删除变量,甚至可以双击变量打开一个数组编辑器进行可视化编辑。
- 显示当前工作内存中所有变量的名称、大小、字节数和类型(如
-
Command History (命令历史记录):
- 记录您在命令行窗口中输入过的所有命令。
- 您可以双击某条历史命令来重新执行它,或者将其拖到脚本编辑器中。
第二部分:MATLAB 基础操作
变量与赋值
MATLAB 中的变量无需预先声明类型,直接赋值即可。
% 定义一个变量 a,并赋值为 5 a = 5; % 定义一个字符串变量 name = 'MATLAB'; % 定义一个逻辑变量 flag = true;
规则:

- 变量名区分大小写(
A和a是不同的变量)。 - 变量名必须以字母开头,后跟字母、数字或下划线。
- 不能使用 MATLAB 的关键字(如
if,for,end等)作为变量名。
矩阵与数组
这是 MATLAB 的核心,MATLAB 中的一切都是矩阵。
创建矩阵:
% 创建一个 1x3 的行向量(一行三列的矩阵) row_vector = [1, 2, 3]; % 或者用空格分隔 row_vector = [1 2 3]; % 创建一个 3x1 的列向量(三行一列的矩阵) column_vector = [1; 2; 3]; % 使用分号分隔行 % 创建一个 2x3 的矩阵 matrix_2x3 = [1, 2, 3; 4, 5, 6]; % 创建特殊矩阵 % 3x3 的全零矩阵 zeros_matrix = zeros(3, 3); % 2x4 的全一矩阵 ones_matrix = ones(2, 4); % 3x3 的单位矩阵(对角线为1,其余为0) identity_matrix = eye(3); % 生成一个从 1 到 10,步长为 2 的行向量 range_vector = 1:2:10; % 结果是 [1 3 5 7 9]
访问矩阵元素:
使用 行索引, 列索引 的方式,索引从 1 开始。
A = [1, 2, 3; 4, 5, 6; 7, 8, 9]; % 访问第 2 行,第 3 列的元素 element = A(2, 3); % element 的值是 6 % 访问第 2 行的所有元素 row_2 = A(2, :); % 结果是 [4 5 6] % 访问第 1 列的所有元素 col_1 = A(:, 1); % 结果是 [1; 4; 7] % 使用 end 关键字表示最后一行/列 last_element = A(end, end); % 值是 9
基本运算
MATLAB 的运算是按元素进行的。
A = [1, 2; 3, 4]; B = [5, 6; 7, 8]; % 矩阵加法 C_add = A + B; % C_add = [6 8; 10 12] % 矩阵减法 C_sub = A - B; % C_sub = [-4 -4; -4 -4] % 矩阵乘法 (线性代数中的乘法) C_mul = A * B; % C_mul = [19 22; 43 50] % 按元素乘法 (点乘) C_dotmul = A .* B; % C_dotmul = [5 12; 21 32] % 按元素除法 (点除) C_dotdiv = A ./ B; % C_dotdiv = [0.2000 0.3333; 0.4286 0.5000] % 按元素乘方 C_power = A .^ 2; % C_power = [1 4; 9 16]
常用内置函数
x = [1, 5, 2, 8, 3]; % 求和 sum_x = sum(x); % sum_x = 19 % 求平均值 mean_x = mean(x); % mean_x = 3.8000 % 求最大值、最小值及其索引 [max_val, max_idx] = max(x); % max_val = 8, max_idx = 4 % 排序 sorted_x = sort(x); % sorted_x = [1 2 3 5 8] % 求正弦值 sin_x = sin(pi/2); % sin_x = 1
第三部分:MATLAB 脚本与编程
在命令行窗口输入代码适合简单计算,但复杂的任务需要使用脚本。
创建和运行脚本
- 点击 MATLAB 主界面的 New Script 按钮,打开脚本编辑器。
- 在编辑器中输入您的代码。
- 点击 Save 按钮,将文件保存为
.m文件(my_first_script.m)。 - 点击 Run 按钮(或按
F5)或在命令行窗口输入文件名(不带.m)来运行脚本。
示例脚本:绘制正弦波
% my_first_script.m
% 这个脚本用于绘制一个周期的正弦波
% 清除工作区和命令行窗口
clear;
clc;
% 1. 定义数据
% 在 0 到 2*pi 之间生成 100 个点
x = linspace(0, 2*pi, 100);
% 计算每个点对应的正弦值
y = sin(x);
% 2. 绘制图形
figure; % 创建一个新的图形窗口
plot(x, y); % 绘制 x 和 y 的关系图
% 3. 美化图形'正弦波曲线'); % 添加标题
xlabel('x (弧度)'); % 添加 x 轴标签
ylabel('sin(x)'); % 添加 y 轴标签
grid on; % 显示网格
控制流
条件语句:if, elseif, else
score = 85;
if score >= 90
disp('成绩等级: A');
elseif score >= 80
disp('成绩等级: B');
elseif score >= 70
disp('成绩等级: C');
else
disp('成绩等级: D 或 F');
end
循环语句:for 循环
% 计算 1 到 10 的累加和
sum_result = 0;
for i = 1:10
sum_result = sum_result + i;
end
disp(['1到10的和是: ', num2str(sum_result)]);
循环语句:while 循环
% 找到小于100的最大斐波那契数
a = 0;
b = 1;
while b < 100
fib_sequence = [fib_sequence, b];
next_val = a + b;
a = b;
b = next_val;
end
disp('小于100的斐波那契数列是:');
disp(fib_sequence);
第四部分:数据可视化
MATLAB 拥有强大的绘图功能。plot 函数是最基础也是最常用的。
基本二维绘图
% 准备数据
x = 0:0.1:2*pi;
y1 = sin(x);
y2 = cos(x);
% 创建新图窗
figure;
% 绘制正弦曲线,使用红色实线,线宽为2
plot(x, y1, 'r-', 'LineWidth', 2);
hold on; % 保持当前图形,以便在同一窗口添加其他曲线
% 绘制余弦曲线,使用蓝色虚线
plot(x, y2, 'b--');
% 添加图例
legend('sin(x)', 'cos(x)');
和标签'正弦和余弦函数');
xlabel('x');
ylabel('y');
grid on;
hold off; % 释放图形
常用绘图样式:
'r-':红色实线'b--':蓝色虚线'g:':绿色点线'mo':品红色圆圈标记'kx':黑色 x 标记
其他常用图形
% 创建一些随机数据 data = randn(100, 1); % 100个标准正态分布的随机数 % 创建一个包含4个子图的窗口 figure; % 子图1: 折线图 subplot(2, 2, 1); plot(data);'折线图'); % 子图2: 直方图 subplot(2, 2, 2); hist(data);'直方图'); % 子图3: 散点图 subplot(2, 2, 3); x = 1:100; scatter(x, data);'散点图'); % 子图4: 盒图 subplot(2, 2, 4); boxplot(data);'盒图');
第五部分:获取帮助
MATLAB 的帮助文档非常完善,学会使用帮助是自学 MATLAB 的关键。
-
命令行帮助:
help 函数名:查看函数的简要帮助信息。help plot
doc 函数名:在帮助浏览器中打开该函数的详细文档,通常包含示例。doc plot
-
帮助浏览器:
- 点击 MATLAB 界面顶部的 Help 菜单,选择 Product Help。
- 在左侧的导航栏中,您可以按主题(如 MATLAB, Mathematics, Graphics)浏览文档,或者使用搜索框。
-
示例:
几乎每个函数的帮助文档底部都包含示例代码,复制这些代码到命令行或脚本中运行,是快速掌握函数用法的最佳方式。
第六部分:学习资源与进阶
官方资源
- MathWorks 官方文档:虽然针对最新版本,但核心概念和函数变化不大,这是最权威的资料。
在线教程
- MATLAB 官方入门教程:MathWorks 官网提供的免费入门课程。
- 大学公开课:在 Coursera, edX, Bilibili 等平台搜索 "MATLAB",可以找到很多大学的优质课程,Vanderbilt 大学的 "MATLAB for Engineers" 课程非常经典。
练习项目
学习编程最好的方式是实践,尝试用 MATLAB 解决一些小问题:
- 数值计算:求解线性方程组、计算定积分。
- 数据分析:读取一个
.txt或.csv文件,对数据进行统计分析并绘图。 - 信号处理:生成一个含有噪声的信号,然后用滤波器进行滤波。
- 图像处理:读取一张图片,进行灰度化、边缘检测等操作(需要 Image Processing Toolbox)。
这份教程为您提供了 MATLAB R2025a 的入门路线图,从了解工作环境开始,掌握变量、矩阵、基本运算,然后学习脚本编程和控制流,再到数据可视化,最后学会利用帮助系统。
实践是掌握 MATLAB 的唯一途径,多动手编写代码,多尝试不同的函数,遇到问题多查阅 help 和 doc,祝您学习顺利!
