MATLAB 绘图入门:函数绘图步骤、标注、多曲线与子图
绘制函数图像三步走:
- 定义自变量 x 的取值范围
- 定义函数 y = f(x)
- 调用 plot(x, y)
基础示例
y = x,x ∈ [0,100],步长 5:
x = [0:5:100]; y = x; plot(x, y)
y = x²,对比步长 20 与 5 的平滑度:
x = [-100:20:100]; y = x.^2; plot(x, y) % 折线感强 x = [-100:5:100]; y = x.^2; plot(x, y) % 平滑曲线
图形美化:标题、标签、网格、坐标轴
- xlabel/ylabel:坐标轴标签
- title:图标题
- grid on:显示网格
- axis equal:等比例坐标轴
- axis square:正方形绘图区
示例:正弦波
x = [0:0.01:10]; y = sin(x);
plot(x, y), xlabel('x'), ylabel('Sin(x)'), title('Sin(x) Graph'), grid on, axis equal
同图多曲线
x = [0:0.01:10];
y = sin(x); g = cos(x);
plot(x, y, x, g, '.-'), legend('Sin(x)', 'Cos(x)')
颜色设置
| 代码 | 颜色 |
|---|---|
| w | 白 |
| k | 黑 |
| b | 蓝 |
| r | 红 |
| c | 青 |
| g | 绿 |
| m | 洋红 |
| y | 黄 |
示例:两多项式
x = [-10:0.01:10]; y = 3*x.^4 + 2*x.^3 + 7*x.^2 + 2*x + 9; g = 5*x.^3 + 9*x + 2; plot(x, y, 'r', x, g, 'g')
坐标轴范围控制
axis([xmin xmax ymin ymax])
示例:阻尼正弦波
x = [0:0.01:10]; y = exp(-x).*sin(2*x+3); plot(x, y), axis([0 10 -1 1])
子图
subplot(m, n, p) % m 行 n 列第 p 个
示例:两阻尼振荡对比
x = [0:0.01:5];
y = exp(-1.5*x).*sin(10*x);
subplot(1,2,1); plot(x,y); xlabel('x'); ylabel('exp(-1.5x)*sin(10x)'); axis([0 5 -1 1])
y = exp(-2*x).*sin(10*x);
subplot(1,2,2); plot(x,y); xlabel('x'); ylabel('exp(-2x)*sin(10x)'); axis([0 5 -1 1])
MATLAB
- MATLAB 入门指南:矩阵实验室的核心能力与应用领域全景
- MATLAB 基础语法速成:交互计算、变量、运算符、格式控制与注释
- MATLAB 变量深度解析:矩阵本质、赋值、多重赋值、查看与清理、长赋值、格式控制、向量创建
- MATLAB 常用命令速查:会话管理、系统操作、输入输出、矩阵数组、绘图可视化
- MATLAB 数据类型完全指南:15 种基本类型、转换函数与类型判断函数速查表
- MATLAB 运算符大全:矩阵/数组算术、关系、逻辑、位运算、集合运算详解
- MATLAB 向量完全指南:行/列向量创建、索引引用、切片、核心运算操作
- MATLAB 矩阵核心操作:创建、索引引用、子矩阵提取、行列删除、拼接与基本运算
- MATLAB 多维数组与特殊数组完全指南
- MATLAB 冒号运算符详解:向量创建与高效迭代
- MATLAB 数值类型详解:存储、转换与范围查询
- MATLAB 字符串完全指南:创建、拼接、元胞数组与常用函数