1

我正在尝试将 MATLABsplotyy函数与 y 轴限制结合使用

x = [4:2:14 18];
y1 = [86; 87; 88; 89; 89.3; 89.6; 89.7];
y2 = [15; 35; 63; 99; 143; 195; 323];
width = .36;
axes = plotyy(x-width, y1, x+width, y2, @(x,y) bar(x,y,width,'b'), @(x,y) bar(x,y,width,'r'));
set(axes(1), 'ylim', [85 90]);
set(axes(1), 'ytick', 85:90);
set(axes(2), 'ytick', 0:50:400);
set(axes,'xtick',x)

这是结果:

带有错误刻度的 plotyy 结果

我想要摆脱的是第二个 y 轴上没有刻度标签的刻度。它们似乎是第一个 y 轴的剩余物。我怎样才能删除它们或避免它们被绘制?

4

2 回答 2

1

根据this question中的代码示例,您应该做的是:

set(axes(1),'Box','off');

但是,这也会删除顶行。如果您需要保持线路,请参阅该问题的答案。

于 2015-07-16T09:40:33.767 回答
0

你也可以使用这个:

box((axes(1),'off')
于 2018-03-15T12:30:08.893 回答