知周所众,MATLAB 提供了多种函数来绘制不同类型的图形。以下是一些常用的绘图函数:
1.plot
plot
是 MATLAB 中最常用的函数之一,用于绘制二维图形。它可以创建线图、散点图、阶梯图等。以下是 plot
函数的一些常见用法和选项:
基本用法
绘制单一线条:
x = linspace(0, 2*pi, 100); % 创建一个线性间隔的向量
y = sin(x); % 计算对应的正弦值
plot(x, y); % 绘制正弦波
绘制多个线条:
y2 = cos(x);
plot(x, y, x, y2); % 在同一图中绘制正弦和余弦
指定线条样式:
plot(x, y, 'r--'); % 绘制红色虚线
PS:
常用线条样式选项
'-'
: 实线'--'
: 虚线':'
: 点线'-.'
: 点划线'r'
: 红色'g'
: 绿色'b'
: 蓝色'y'
: 黄色'm'
: 洋红色'c'
: 青色'k'
: 黑色'w'
: 白色'o'
: 圆圈标记'+'
: 交叉标记'*'
: 星号标记'.'
: 点标记'x'
: x标记's'
: 方块标记'd'
: 菱形标记'^'
: 上三角标记'v'
: 下三角标记'>'
: 右三角标记'<'
: 左三角标记
组合线条样式
你可以组合线条样式、颜色和标记,例如:
plot(x, y, 'r--o'); % 红色虚线,带圆圈标记
绘制散点图
plot(x, y, 'o'); % 使用圆圈标记绘制散点图
绘制阶梯图
y = [1 2 2 3 3 3 2 1 1];
plot(y, 'steps'); % 绘制阶梯图
添加标题和标签
plot(x, y);
title('Sine Wave'); % 添加标题
xlabel('x axis label'); % x轴标签
ylabel('sin(x)'); % y轴标签
使用图例
plot(x, y, x, y2);
legend('sin(x)', 'cos(x)'); % 添加图例
网格
plot(x, y);
grid on; % 添加网格
多子图
使用 subplot
函数可以创建多个子图:
subplot(2, 1, 1); % 创建一个2行1列的子图,并定位到第1个
plot(x, y);
subplot(2, 1, 2); % 定位到第2个
plot(x, y2);
MATLAB 的图形窗口提供了交互式工具,如数据光标、缩放、平移等。你可以通过点击图形窗口的工具栏图标来激活这些工具。
注意事项
plot
函数可以接受向量、矩阵和单元数组作为输入。- 当输入矩阵时,
plot
会按行绘制每列的数据。 plot
函数的调用格式非常灵活,你可以根据需要选择传递给它的参数数量和类型。
2.plot3
plot3
是 MATLAB 中用于在三维空间中绘制点或线的函数。它允许你指定 x、y 和 z 坐标来绘制三维数据。以下是 plot3
函数的一些常见用法:
基本用法
绘制单一线条:
t = linspace(0, 4*pi, 100);
x = sin(t);
y = cos(t);
z = t;
plot3(x, y, z); % 绘制三维螺旋线
绘制多个线条:
x2 = sin(t) .* cos(t');
y2 = cos(t) .* sin(t');
z2 = t;
plot3(x, y, z, x2, y2, z2); % 在同一图中绘制两条线
指定线条样式:
plot3(x, y, z, 'r--'); % 绘制红色虚线
线条样式选项
与 plot
函数类似,plot3
也支持线条样式、颜色和标记的组合,例如:
plot3(x, y, z, 'r--o'); % 红色虚线,带圆圈标记
绘制散点图
plot3(x, y, z, 'o'); % 使用圆圈标记绘制三维散点图
添加标题和标签
plot3(x, y, z);
title('3D Spiral'); % 添加标题
xlabel('X axis'); % X轴标签
ylabel('Y axis'); % Y轴标签
zlabel('Z axis'); % Z轴标签
使用图例
plot3(x, y, z, 'r', x2, y2, z2, 'b');
legend('Spiral 1', 'Spiral 2'); % 添加图例
网格
plot3(x, y, z);
grid on; % 添加网格
多子图
使用 subplot
函数可以创建多个子图:
subplot(1, 2, 1); % 创建一个1行2列的子图,并定位到第1个
plot3(x, y, z);
subplot(1, 2, 2); % 定位到第2个
plot3(x2, y2, z2);
视图控制
你可以使用 view
函数来改变观察三维图形的角度:
plot3(x, y, z);
view(3); % 设置为三维视图
坐标轴控制
plot3(x, y, z);
axis equal; % 设置坐标轴比例相等
axis tight; % 紧凑显示坐标轴
交互式工具
与二维图形一样,三维图形窗口也提供了交互式工具,如旋转、缩放、平移等。你可以通过点击图形窗口的工具栏图标来激活这些工具。
注意事项
plot3
函数可以接受向量、矩阵和单元数组作为输入。- 当输入矩阵时,
plot3
会按行绘制每列的数据。 plot3
函数的调用格式非常灵活,你可以根据需要选择传递给它的参数数量和类型。
3.scatter
基本用法
-
绘制简单的散点图:
x = randn(1, 100); % 生成 X 值 y = randn(1, 100); % 生成 Y 值 scatter(x, y); % 绘制散点图
2.指定点的大小
-
scatter(x, y, 'SizeData', 10); % 将所有点的大小设置为 10
-
指定点的颜色
scatter(x, y, 'r'); % 将所有点的颜色设置为红色
自定义点的颜色和大小
根据第三个参数数组来设置颜色和大小:
size = abs(x) + abs(y); % 基于 x 和 y 的绝对值来确定点的大小
color = x.^2 + y.^2; % 基于 x 和 y 值的平方和来确定颜色强度
scatter(x, y, size, color);
使用 RGB 颜色:
scatter(x, y, 10, [0.5, 0.5, 0.5], 'filled'); % 使用 RGB 颜色并填充点
注意事项
scatter
函数可以接受向量、矩阵和单元数组作为输入。- 点的大小和颜色可以通过额外的参数来指定,这些参数可以是标量、向量或矩阵。
- 如果指定了大小和颜色参数,它们应该是与 x 和 y 数据点数量相同的向量。
'filled'
参数可以用来填充散点图中的点。