matlab两条纵轴两个图例
时间: 2025-02-26 09:10:44 AIGC 浏览: 91
### 创建带有双 Y 轴和双图例的 MATLAB 图表
在 MATLAB 中,`plotyy` 函数用于创建带有一个共享 X 轴但有两个不同 Y 轴的图表。为了进一步增强可视化效果并清晰地区分两组数据,可以分别为每条 Y 轴添加对应的图例。
#### 使用 `plotyy` 绘制双 Y 轴图形
下面是一个简单的例子来展示如何利用 `plotyy` 来完成这一目标:
```matlab
% 定义一些示例数据
x = linspace(0, 10);
y1 = sin(x); % 左侧Y轴的数据
y2 = exp(-0.1*x).*cos(pi*x/2); % 右侧Y轴的数据
% 使用 plotyy 同时绘制两条曲线,并指定不同的颜色样式
[ax,h1,h2] = plotyy(x,y1,x,y2,'plot');
% 设置左侧Y轴的颜色为蓝色,右侧Y轴的颜色为红色
set(get(ax(1),'Ylabel'),'Color','b')
set(get(ax(2),'Ylabel'),'Color','r')
% 添加标签给X轴以及两侧的Y轴
xlabel('时间 (s)')
ylabel(ax(1), '正弦波幅度') % 对应于左Y轴
ylabel(ax(2), '指数衰减余弦波幅度') % 对应于右Y轴
% 修改线条属性以便更好地识别各条线代表什么变量
set(h1,'LineStyle','-','LineWidth',2,'Color','blue');
set(h2,'LineStyle','--','LineWidth',2,'Color','red');
% 为每个子图分别创建图例
legend([h1 h2],{'Sine Wave';'Decaying Cosine'},...
'Location','NorthWest'); % 将两个图例放在同一个位置上显示
```
这段代码展示了怎样通过调整各个部分的颜色、宽度和其他视觉特性使最终得到的结果更加直观易懂[^1]。
对于更复杂的场景下可能还需要考虑其他因素比如网格线的位置等细节处理;另外值得注意的是,在较新版本的MATLAB中推荐使用`yyaxis`命令替代已经过时的`plotyy`函数来进行类似的多轴绘图操作[^2]。
阅读全文
相关推荐



















