plotyy函数显示两个x轴但只想要一个

时间:2014-11-11 11:05:46

标签: matlab

我正在使用plotyy函数生成下图中的图表。

My Chart

我对此图表有两个问题。第一个问题是有两个x轴我希望我的图表左侧的零点与右侧的零点齐平。无论如何我能做到这一点吗?

最后我想在x轴上放置一些标签,但是你可以在标签上面加上数字。我只希望标签可见,我似乎无法做到?

以下是我的代码。

 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',[]);

1 个答案:

答案 0 :(得分:2)

尝试linkaxes

linkaxes(pp,'y')

您可能需要使用pp(1).Ylim = ...调整轴限制以获得所需的结果。