2013-12-12 94 views
3

我正在使用MATLAB,我想要一个条形图。 我绘制了酒吧,然后给酒吧标题。条形图X轴标题不适用于许多酒吧

如果我只使用10个酒吧它的作品(见图1)。

但我经常需要更多,大多数是32个酒吧(见图2)。 在这种情况下,标题不在栏下。我发现MATLAB不会重叠标题。最大值是15巴。

有谁知道我怎么能让MATLAB重叠标题?

这里是我的绘制代码吧:

y = absSlopes(1, 1:size(absSlopes,2)); 
hb = bar(y); 
set(gca,'XTickLabel',titles); 
rotateXLabels(gca, 45); 
ylabel('Anzahl'); 

absSlopes是一个矩阵,我用的是完整的第一道防线。

enter image description here

回答

1

你可能想尝试XTick除了XTickLabel。至少对于常规情节,您可以通过此设置强制执行特定的间距。

您可以通过一个额外的设置命令做到这一点:

set(gca,'XTickLabel',titles); 
set(gca,'XTick',absSlopes(1,:)); 

当然,你可以设置在同一行中两个属性,但我喜欢保持简单的情况下,要deactiviate /评论一个或另一个设置稍后。

+0

非常感谢你,我达到了目标;) 我只编辑你的解决方案“set(gca,'XTick',1:size(absSlopes,2));” 真的真的很感谢你:-) – SolarTurtle

+0

@pyStarter按照SolarTurtle的建议,'1:size(absSlopes,2)'是否需要在第二个'set'命令中?很明显,他的编辑被拒绝了,而且OP在他的问题上采用了“解决方案”。 :) – chappjc

+0

我不这么认为,没关系。这是为什么:'absSlopes(1,:)'将抓取* absSlopes *的第一行的所有列。另一方面,'1:size(absSlopes,2)'将包含从1到结尾的* absSlopes *的所有列索引,因此'absSlopes(1,1:size(absSlopes,2))'将返回相同的作为我的(较短的)命令。 – fuesika

相关问题