一、MATLAB 基础入门
1. MATLAB 界面介绍
当启动 MATLAB 时,你会看到以下主要组件:
-
命令窗口 (Command Window):输入指令并查看结果
-
工作区 (Workspace):显示所有变量
-
当前文件夹 (Current Folder):管理文件
2. 基本操作与计算
在命令窗口尝试这些基础操作:
% 基本计算
3 + 4 % 加法
5 * 6 % 乘法
10 / 2 % 除法
2 ^ 3 % 幂运算
% 创建变量
a = 10; % 分号; 抑制输出
b = 5;
c = a * b % 显示结果
% 清除命令
clear % 清除所有变量
clc % 清除命令窗口
3. 矩阵操作(MATLAB 核心)
MATLAB 以矩阵操作为核心:
% 创建行向量
row_vector = [1, 2, 3, 4]
% 创建列向量
column_vector = [1; 2; 3; 4]
% 创建矩阵
matrix = [1, 2, 3; 4, 5, 6; 7, 8, 9]
% 访问元素
element = matrix(2, 3) % 第2行第3列 → 6
% 矩阵转置
transposed = matrix'
% 矩阵乘法
A = [1, 2; 3, 4];
B = [5, 6; 7, 8];
C = A * B
二、数据可视化入门
MATLAB 强大的绘图功能是其亮点之一:
1. 基本绘图
% 创建数据
x = 0:0.1:2*pi; % 从0到2π,步长0.1
y = sin(x);
% 绘制正弦曲线
plot(x, y);
title('正弦函数曲线'); % 添加标题
xlabel('X轴'); % X轴标签
ylabel('Y轴'); % Y轴标签
grid on; % 显示网格
2. 多图绘制
% 在同一图中绘制多条曲线
y2 = cos(x);
plot(x, y, 'r-', x, y2, 'b--'); % 红色实线,蓝色虚线
legend('sin(x)', 'cos(x)'); % 添加图例
% 创建子图
subplot(2, 1, 1); % 2行1列的第1个子图
plot(x, y);
title('正弦函数');
subplot(2, 1, 2); % 2行1列的第2个子图
plot(x, y2);
title('余弦函数');
3. 3D 绘图
% 创建3D数据
[X, Y] = meshgrid(-2:0.1:2); % 生成网格
Z = X .* exp(-X.^2 - Y.^2); % 计算函数值
% 绘制3D曲面
surf(X, Y, Z);
title('3D曲面图');
xlabel('X轴');
ylabel('Y轴');
zlabel('Z轴');
colorbar; % 显示颜色条
三、编程基础
1. 脚本文件
创建脚本(.m文件)保存和重用代码:
-
点击"新建脚本"
-
输入代码
-
保存为"circle_calc.m"
-
在命令窗口输入"circle_calc"运行
% 计算圆的面积和周长
radius = 5;
area = pi * radius^2;
circumference = 2 * pi * radius;
fprintf('半径为 %.2f 的圆:\n', radius);
fprintf('面积 = %.2f\n', area);
fprintf('周长 = %.2f\n', circumference);
2. 函数文件
创建可重复使用的函数:
% 创建函数文件 quadratic.m
function [x1, x2] = quadratic(a, b, c)
% 求解二次方程 ax^2 + bx + c = 0
% 输入: a, b, c - 二次方程系数
% 输出: x1, x2 - 方程的两个根
discriminant = b^2 - 4*a*c;
x1 = (-b + sqrt(discriminant)) / (2*a);
x2 = (-b - sqrt(discriminant)) / (2*a);
end
%在命令窗口调用:
[r1, r2] = quadratic(1, -3, 2) % 解 x^2 - 3x + 2 = 0
3. 流程控制
% if-else 条件语句
x = 10;
if x > 0
disp('正数');
elseif x < 0
disp('负数');
else
disp('零');
end
% for 循环
for i = 1:5
fprintf('循环迭代 %d\n', i);
end
% while 循环
n = 1;
while n <= 5
fprintf('n = %d\n', n);
n = n + 1;
end
四、数据处理基础
1. 导入数据
% 导入Excel数据
data = readtable('data.xlsx');
% 导入CSV数据
data = readtable('data.csv');
% 查看数据摘要
summary(data)
% 显示前几行
head(data)
2. 数据操作
% 创建表格
names = {'Alice'; 'Bob'; 'Charlie'};
ages = [25; 30; 35];
scores = [85; 92; 78];
T = table(names, ages, scores)
% 访问列数据
T.ages % 访问年龄列
T.ages(2) % Bob的年龄
% 筛选数据
young = T(T.ages < 30, :) % 年龄小于30的记录
五、实用技巧
1. 提高效率
-
使用 Tab 键补全:输入部分命令后按 Tab 查看选项
-
查看历史命令:按 ↑ 键浏览之前输入的命令
-
帮助文档:在命令窗口输入
doc 函数名
查看详细帮助 -
注释代码:使用
%
添加注释
2. 常见错误解决方法
-
未定义变量:确保所有变量都已定义
-
矩阵维度不匹配:检查操作矩阵的大小
-
函数名拼写错误:使用 Tab 补全避免拼写错误
-
路径问题:确保文件在 MATLAB 当前文件夹中