这是我面临的问题。我有代码,它构建了一些条形图。
为了更好地比较它们,我需要它们具有相同的比例。看看doc栏,我无法找到如何指定条形图具有特定的最大高度。
所以在我的例子中,例如我有以下代码:
c = [0 0 12 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0];
e = [0 2 5 6 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0];
f = [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 19];
b = [0 9 7 0 0 1 0 1 0 1 1 0 0 0 0 0 0 0 0];
subplot(2,2,1)
bar(b)
subplot(2,2,2)
bar(e)
subplot(2,2,3)
bar(f)
subplot(2,2,4)
bar(c)
第一个子图的高度为10,而不是6,而不是15。
是否有一种简单的方法可以让所有人的最大身高都达到20。
答案 0 :(得分:7)
您可以使用linkaxes
命令:
h(1) = subplot(2,2,1)
bar(b)
h(2) = subplot(2,2,2)
bar(e)
h(3) = subplot(2,2,3)
bar(f)
h(4) = subplot(2,2,4)
bar(c)
linkaxes(h)
ylim([0 20])
答案 1 :(得分:5)
您可以使用set
命令和轴的手柄(=标识符)轻松更改轴属性。如果您尚未存储轴手柄(subplot
的第一个输出),则首先必须找到它们:
%# collect axes handles
axH = findall(gcf,'type','axes');
%# set the y-limits of all axes (see axes properties for
%# more customization possibilities)
set(axH,'ylim',[0 20])