Matlab plotyy函数显示两个x轴,但只需要一个
我正在使用plotyy函数生成下图中的图表 我对这个图表有两个问题。第一个问题是有两个x轴,我希望图表左侧的零与右侧的零平齐。不管怎样,我能做到这一点吗 最后,我想把一些标签放在x轴上,但是你可以看到,我的标签上面有数字。我只希望标签是可见的,而我似乎做不到 下面是我的代码Matlab plotyy函数显示两个x轴,但只需要一个,matlab,Matlab,我正在使用plotyy函数生成下图中的图表 我对这个图表有两个问题。第一个问题是有两个x轴,我希望图表左侧的零与右侧的零平齐。不管怎样,我能做到这一点吗 最后,我想把一些标签放在x轴上,但是你可以看到,我的标签上面有数字。我只希望标签是可见的,而我似乎做不到 下面是我的代码 x_labels = data_cell(2:end, 1); risk_tot = cell2mat(data_cell(2:end, 2)); risk_cont = cell2mat(data_cell(2:e
x_labels = data_cell(2:end, 1);
risk_tot = cell2mat(data_cell(2:end, 2));
risk_cont = cell2mat(data_cell(2:end, 3));
[pp,h1,h2]=plotyy((1:length(risk_tot)),risk_tot,(1:length(risk_tot)),risk_cont,'bar','stem');
set(gca,'XtickL',x_labels);
set(h1,'FaceColor',my_Blue2(40,:),'EdgeColor',my_Blue2(40,:))
set(h2,'Color',my_Orange(1,:),'LineWidth',0.5,'MarkerEdgeColor',my_Orange(1,:))
set(pp(1),'Box','off')
set(pp(2),'Box','off')
更新
我已经设法解决了x轴标签的第二个问题。我只是在下面加了一行。这会将第二个x轴标签设置为空
仍然无法解决第一个问题
set(pp(2),'XTickLabel',[]);
尝试:
您可能需要使用
pp(1).Ylim=…
调整轴限制以获得所需的结果。谢谢,我现在只有一个x轴。然而,它切断了我图表的一部分(一个变量相当大,令人恼火)。我尝试使用pp(1),Ylim=y2_max;但是,收到一条错误消息“Structure assignment to non Structure object.”我认为pp(1).Ylim
语法只适用于最新版本(R2014b)。对于较旧的版本,如果我的记忆良好,我认为它类似于set(pp(1),'Ylim',[0 y2_max])
。如果你有两个不同大小的轴,链接轴的缺点是一个图看起来很小。。。
linkaxes(pp,'y')