更改条形图中的刻度标签

时间:2014-08-28 14:46:36

标签: matlab plot

考虑以下示例:

aa = [911354,4049816,9041133,16045631,23974555,35821544,47721190,...
    63573808,84692546,106536581,134014666,168579941,200237804,...
    237840742,237840742];
aa2 = [0,0.5,1,1.5,2,2.5,3,3.5,4,4.5,5,5.5,6,6.5,7];

bar(aa2,aa/1e6,'histc');
xlim([0 7]);

给出了

enter image description here

如何更改此设置以使x轴显示刻度线之间的范围,例如0.0到0.5,0.5到1.0等等。与此类似:

enter image description here

3 个答案:

答案 0 :(得分:0)

您可以使用xtick,如下所示:

plot(x, y) set(gca, 'XTick',0:0.5:7) 这将在栏的两侧为您提供数字,但如果您想将其显示为范围,请查看Dan给出的链接。

答案 1 :(得分:0)

tmp = cell(8/0.5,1);
for i = 0:0.5:7
   tmp{i*2+1} = sprintf('%d-%d',i,i+1);
end
set(gca,'XTickLabel',temp)

详细了解XTickLabel:http://www.mathworks.com/help/matlab/ref/axes_props.html#XTickLabel

答案 2 :(得分:0)

上面的所有答案都解决了使用字符串作为刻度的问题。但是,这不是问题的全部内容。问题的很大一部分是旋转测试。我找到的最佳解决方案是在mathworks网站上。使用following http://www.mathworks.co.uk/matlabcentral/fileexchange/3486-xticklabel-rotate  用于旋转文本的包。