MATLAB二维绘图中如何添加图例

文章目录


前言

在 MATLAB 二维绘图中,添加图例(legend)是标识不同曲线或数据系列的重要方式。以下是详细的方法和示例。


MATLAB 二维绘图详细教程

MATLAB 二维绘图教程链接:https://blog.csdn.net/tyatyatya/article/details/147903587

MATLAB安装环境配置

MATLAB下载安装教程:https://blog.csdn.net/tyatyatya/article/details/147879353

1. 基本图例添加

使用legend函数直接添加图例,按绘图顺序匹配标签。

x = 0:0.1:2*pi;
plot(x, sin(x), 'b-', 'LineWidth', 2);
hold on;
plot(x, cos(x), 'r--', 'LineWidth', 2);
hold off;

legend('正弦函数', '余弦函数');  % 按绘图顺序添加标签
```c
# 2. 指定图例位置
通过Location参数控制图例显示位置。
```c
legend('正弦函数', '余弦函数', 'Location', 'best');  % 自动选择最佳位置
% 其他可选位置: 'north', 'south', 'east', 'west', 'northeast' 等

3. 自定义图例属性

可修改图例的字体、颜色、边框等属性。

h = legend('数据A', '数据B');
set(h, 'FontSize', 12, ...       % 字体大小
       'FontName', 'Arial', ...  % 字体
       'TextColor', [0.2 0.2 0.2], ...  % 文本颜色
       'EdgeColor', 'none', ...  % 无边框
       'BackgroundColor', 'white');  % 背景色

4. 为特定曲线添加图例

若只需要为部分曲线添加图例,可通过句柄指定。

x = 0:0.1:2*pi;
h1 = plot(x, sin(x), 'b-');
hold on;
h2 = plot(x, cos(x), 'r--');
plot(x, tan(x), 'g:', 'HandleVisibility', 'off');  % 隐藏此曲线的图例
hold off;

legend([h1, h2], '正弦', '余弦');  % 仅为h1和h2添加图例

5. 图例分组与多行显示

使用’Orientation’参数实现水平或垂直排列。

legend('第一组数据', '第二组数据', 'Orientation', 'horizontal');  % 水平排列

6. 图例中使用 LaTeX 公式

支持 LaTeX 格式的数学符号。

legend('f(x) = \sin(x)', 'f(x) = \cos(x)');  % 使用LaTeX语法

7. 图例与子图结合

每个子图可单独添加图例。

subplot(2,1,1);
plot(x, sin(x));
legend('正弦');

subplot(2,1,2);
plot(x, cos(x));
legend('余弦');

8. 动态更新图例

在循环中动态添加数据时,可实时更新图例。

figure;
hold on;
leg_entries = {};  % 初始化图例标签数组

for i = 1:3
    plot(x, sin(x + (i-1)*pi/3));
    leg_entries = [leg_entries, {['相位: ' num2str((i-1)*pi/3)]}];
end

legend(leg_entries);  % 更新图例
  • 图例常用参数总结
    MATLAB二维绘图中如何添加图例

注意事项

  1. 图例顺序与绘图顺序一致,或与指定句柄的顺序一致。
  2. 使用hold on可在同一图中叠加多条曲线。
  3. 若曲线过多,可考虑使用’Location’参数避免遮挡数据。
  4. 复杂图例可通过创建多个图例对象实现(使用legend的返回句柄)。
  5. 通过灵活运用这些方法,你可以在 MATLAB 中创建清晰、美观的图例,提升图表的可读性。
本文是转载文章,点击查看原文
如有侵权,请联系 lx@jishuguiji.net 删除。