matlab双y轴坐标怎么设置

如题所述

材料/工具:matlab

1、启动MATLAB,新建脚本(Ctrl+N),输入如下代码,生成标准正态分布函数的数据。

close all; clear all; clc

x=-1:.1:1;

norm=normpdf(x,0,1);

其中normpdf(x,0,1) 是生成平均值为0,标准差为1的标准正态分布数据,数据分布从-1到1。

2、保存和运行上述脚本,在工作区(Workspace)双击norm可以查看生成的标准正态分布数据。

3、绘制双y轴的标准正态分布函数图形,其中左侧y轴用条形图(bar)绘制,右侧y轴用线形图绘制(plot)。继续添加代码如下:

[hAx,hLine1,hLine2]=plotyy(x,norm,x,norm,'bar','plot');

set(hLine2,'Color','y','LineWidth',3)

其中set(hLine2,'Color','y','LineWidth',3)是将右侧y轴的线形图颜色设置为黄色y。

4、保存和运行上述脚本,得到双y轴的标准正态分布函数图形如下。

5、下面为左右两侧y轴添加坐标标注,继续添加如下代码:

ylabel(hAx(1),'Normal Distribution Bar','FontSize',15)

ylabel(hAx(2),'Normal Distribution Plot','FontSize',15)

6、保存和运行上述脚本,得到最终的双y轴的标准正态分布函数图形。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-12-15

可以使用plotyy命令,具体参照下面一个例子:

clear;
clc;
figure(1)
clf;

x = 0:0.001:10;
y1 = sin(x);
y2 = cos(x);
y3 = 5*sin(2*x);

%使用[]表示一个整体图形,必须要转置成列的形式,而且横纵坐标要分开表示
[AX,H1,H2]=plotyy([x',x'],[y1',y2'],x,y3);



% 设置坐标轴的范围和刻度
set(AX,'Xlim',[0,10]) 
set(gca,'XTick',[0:1:10])
set(AX(1),'Ylim',[-1.5,1.5]) 
set(AX(2),'Ylim',[-6,6]) 
set(AX(1),'yTick',[-1.5:0.5:1.5]) 
set(AX(2),'yTick',[-6:1:6])

%设置坐标轴
set(get(AX(1),'Ylabel'),'string',{'sin(x)';'cos(x)'});
set(get(AX(2),'Ylabel'),'string','5*sin(2x)');
xlabel({'x','y2'});


legend([H1(1),H1(2),H2],'cos(x)','sin(x)','5*sin(2*x)')

结果如下:

本回答被网友采纳
相似回答