x轴文本在matlab中重叠

x axis text overlapping in matlab

我的 x 轴文本重叠。我正在使用此代码--

   clear all
   A=[1 2 3 4 5 6 7]';
 b=1:length(A);
 figure(1)
 bar(A)
 title('Loss Diagram')
 xlabel('Loss factor')
 ylabel('kWh/year','fontsiz`enter code here`e',20)
 grid on

set(gca,'Xtick',b,'XtickLabel',{'Horizntl Global Irr. ' 'Effective irr. on coll. ' 'Array nominal energy ' 'PV module loss ' 'charge controller loss  ' 'Battery efficiency loss ' 'converter loss '},'fontsize',14);

![matlab图像]http://filepi.com/i/HeQt8pE

您没有提出问题,但我假设您想要某种方式来显示您的 x 轴标签而不重叠。

一个解决方案是 rotateXLabels.m,它也内置在最新的 Matlab 版本中。

这是一个例子:

A=[1 2 3 4 5 6 7]';
b=1:length(A);

figure(1)
bar(A)

title('Loss Diagram')
xlabel('Loss factor')
ylabel('kWh/year', 'FontSize', 20)
grid on

set(gca,'Xtick',b,'XtickLabel', ...
    {'Horizntl Global Irr. ', 'Effective irr. on coll. ', ...
    'Array nominal energy ' 'PV module loss ' 'charge controller loss ', ...
    'Battery efficiency loss ' 'converter loss '}, 'FontSize', 14);

rotateXLabels( gca(), 45 )

产生: