第三章:Matlab 绘图功能
3.1 二维绘图
3.1.1 基本绘图函数
plot
: 绘制二维曲线图。stem
: 绘制离散数据图。
代码示例:
matlab">% 使用 plot 绘制正弦曲线
x = 0:0.1:2*pi;
y = sin(x);
plot(x, y);
title('正弦曲线');
xlabel('x');
ylabel('sin(x)');% 使用 stem 绘制离散数据
x = 1:10;
y = rand(1, 10);
stem(x, y);
title('离散数据图');
xlabel('x');
ylabel('y');
3.1.2 图形属性设置
- 线条颜色: 使用
'Color'
属性,例如'r'
(红色),'g'
(绿色),'b'
(蓝色) 等。 - 线型: 使用
'LineStyle'
属性,例如'-'
(实线),'--'
(虚线),':'
(点线) 等。 - 标记符号: 使用
'Marker'
属性,例如'o'
(圆圈),'*'
(星号),'+'
(加号) 等。
代码示例:
matlab">x = 0:0.1:2*pi;
y1 = sin(x);
y2 = cos(x);% 设置线条颜色、线型和标记符号
plot(x, y1, 'r--o', 'LineWidth', 2); % 红色虚线,圆圈标记
hold on; % 保持当前图形
plot(x, y2, 'b:', 'LineWidth', 2); % 蓝色点线
legend('sin(x)', 'cos(x)');
title('正弦和余弦曲线');
xlabel('x');
ylabel('y');
3.1.3 多图绘制
subplot
: 将图形窗口划分为多个子图,并在每个子图中绘制图形。
代码示例:
matlab">x = 0:0.1:2*pi;
y1 = sin(x);
y2 = cos(x);
y3 = tan(x);% 创建 2x2 的子图布局
subplot(2, 2, 1); % 第一行第一列
plot(x, y1);
title('sin(x)');subplot(2, 2, 2); % 第一行第二列
plot(x, y2);
title('cos(x)');subplot(2, 2, 3); % 第二行第一列
plot(x, y3);
title('tan(x)');
3.1.4 图形标注
title
: 添加图形标题。xlabel
: 添加 x 轴标签。ylabel
: 添加 y 轴标签。legend
: 添加图例。
代码示例:
matlab">x = 0:0.1:2*pi;
y1 = sin(x);
y2 = cos(x);plot(x, y1, 'r', 'LineWidth', 2);
hold on;
plot(x, y2, 'b', 'LineWidth', 2);
title('正弦和余弦曲线');
xlabel('x');
ylabel('y');
legend('sin(x)', 'cos(x)');
3.2 三维绘图
3.2.1 三维曲线绘制
plot3
: 绘制三维曲线。
代码示例:
matlab">t = 0:0.1:10*pi;
x = sin(t);
y = cos(t);
z = t;plot3(x, y, z);
title('三维螺旋线');
xlabel('x');
ylabel('y');
zlabel('z');
grid on;
3.2.2 三维曲面绘制
surf
: 绘制三维曲面图。mesh
: 绘制三维网格图。
代码示例:
matlab">[x, y] = meshgrid(-2:0.1:2);
z = x.^2 + y.^2;% 绘制三维曲面图
figure;
surf(x, y, z);
title('三维曲面图');
xlabel('x');
ylabel('y');
zlabel('z');% 绘制三维网格图
figure;
mesh(x, y, z);
title('三维网格图');
xlabel('x');
ylabel('y');
zlabel('z');
3.2.3 视角调整与图形旋转
view
: 设置视角。rotate3d
: 启用图形旋转功能。
代码示例:
matlab">[x, y] = meshgrid(-2:0.1:2);
z = x.^2 + y.^2;surf(x, y, z);
title('三维曲面图');
xlabel('x');
ylabel('y');
zlabel('z');% 设置视角
view(30, 45); % 方位角 30 度,俯仰角 45 度% 启用图形旋转
rotate3d on;
3.3 图形保存与导出
3.3.1 保存图形为不同格式
saveas
: 将图形保存为指定格式的文件,例如png
,jpg
,pdf
等。
代码示例:
matlab">x = 0:0.1:2*pi;
y = sin(x);
plot(x, y);
title('正弦曲线');
xlabel('x');
ylabel('sin(x)');% 保存为 png 格式
saveas(gcf, 'sine_wave.png');% 保存为 jpg 格式
saveas(gcf, 'sine_wave.jpg');% 保存为 pdf 格式
saveas(gcf, 'sine_wave.pdf');
3.3.2 设置图形分辨率与尺寸
print
: 设置图形分辨率和尺寸,并保存图形。
代码示例:
matlab">x = 0:0.1:2*pi;
y = sin(x);
plot(x, y);
title('正弦曲线');
xlabel('x');
ylabel('sin(x)');% 设置分辨率为 300 dpi,尺寸为 8x6 英寸
print('-dpng', '-r300', '-s800,600', 'sine_wave_high_res.png');
总结:
本章介绍了 MATLAB 的绘图功能,包括二维绘图、三维绘图以及图形保存与导出。通过代码示例,您可以学习如何使用不同的函数绘制各种图形,并设置图形的属性和标注。在接下来的章节中,我们将学习 MATLAB 的其他功能,例如文件操作、符号计算、图像处理等。
持续更新中!如果对您有帮助请点个赞!