bar plot cannot spread x axis homogeneously

1 view (last 30 days)
imp_2d_E=[0 -1;0 0;0 3;0 0;0 0;0 0;0 0;2 3;0 0;1 0;0 0;0 1;0 0;0 0;1 0;0 0;1 1;0 0;2 2;0 0];
bar(imp_2d_E)
set(gca,'XTick',[]);
xtl = {'ALIC','AMC4','BOGT','BSHM','CPVG','DAV1','KZN2','LPGS','MADR','MCM4','MIZU','NAUR','NKLG','PALM','PIMO','SAMO','SUTH','TRO1','URUM','YEL2'};
xtnew = linspace(1, numel(xtl), numel(xtl));
set(gca, 'XTick',xtnew, 'XTickLabel',xtl, 'XTickLabelRotation',90);
title('2D improvement (cut-off:5)','FontWeight','bold','FontSize',22);
xlabel('STATIONS', 'FontWeight', 'bold','FontSize',20);
ylabel('millimeter ', 'FontWeight','bold','FontSize',20)
legend('24h','12h');
set(gca,'FontWeight','bold')
set(gca,'fontsize',20)
ylim([-2 4])
When executing the above codes, x axis cannot be homogeneously spreaded and unreasonable space from the right side has remained. How can I correct this limitation?
  1 Comment
Adam Danz
Adam Danz on 15 Jul 2019
Edited: Adam Danz on 15 Jul 2019
The code you shared doesn't reproduce the problem when I run it (r2019a). The image below is the result of your code and I added the "grid on" command. Are you sure you're not setting the xlim() somewhere?

Sign in to comment.

Accepted Answer

Star Strider
Star Strider on 15 Jul 2019
Either add a xlim call, or define both axes limits at the same time, and replace your ylim call with an axis call:
axis([0 20 -2 4])

More Answers (0)

Categories

Find more on Geographic Plots in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!