matlab为子图创建共同的图例
时间: 2023-09-06 12:03:55 浏览: 202
在MATLAB中,可以使用下面的方法为子图创建共同的图例:
1. 首先,在每个子图中创建需要显示在图例中的曲线。可以使用"plot"、"scatter"或其他绘图函数来创建曲线。
2. 对于每个子图,使用"hold on"命令来保持子图的状态,不让其被后续的图形覆盖。
3. 在所有子图都创建完曲线后,在任意一个子图中使用"legend"函数来创建图例。在"legend"函数中,可以通过输入一个字符串数组,来显示每个曲线对应的标签。
4. 在每个子图之后,使用"hold off"命令来恢复子图的默认状态,使得后续的图形不会再覆盖之前创建的曲线。
下面是一个简单的示例代码,用来说明如何实现这个过程:
```matlab
% 创建一个2x2的子图
subplot(2, 2, 1);
x1 = [0:0.1:1];
y1 = sin(x1);
plot(x1, y1);
hold on;
subplot(2, 2, 2);
x2 = [0:0.1:1];
y2 = cos(x2);
plot(x2, y2);
hold on;
subplot(2, 2, 3);
x3 = [0:0.1:1];
y3 = exp(x3);
plot(x3, y3);
hold on;
subplot(2, 2, 4);
x4 = [0:0.1:1];
y4 = sqrt(x4);
plot(x4, y4);
hold on;
% 在子图1的位置添加图例
legend('sin(x)');
% 关闭所有子图的"hold on"状态
hold off;
```
通过这个方法,在每个子图中分别创建曲线,并通过图例将其进行关联。这样就可以实现为子图创建共同的图例。