Make x axis values not overlapping

4 views (last 30 days)
Anita Capelli
Anita Capelli on 11 Nov 2021
Answered: Dave B on 11 Nov 2021
Goodafternoon,
I'm plottin some values with bar() and I have the x values that overlaps. I was wondering if there was a way to have the values on the x axis shifted among them so to not touch each other.
I'll try to make an example here after:
------------------------------------------------------------------- this is xaxis
5 7 9 11
6 8 10
thanks a lot
Anita
  2 Comments
Yongjian Feng
Yongjian Feng on 11 Nov 2021
Maybe you just need to make your figure bigger/wider?
Anita Capelli
Anita Capelli on 11 Nov 2021
But in this way i'm loosing the propotions and appear different from any other graph I have on my repor. It is impossible to shift as I showed the value?

Sign in to comment.

Accepted Answer

Dave B
Dave B on 11 Nov 2021
You can make this kind of (multi-row) labelling work by relying on the TeX interpreter. Note this answer is a total rip-off of the answer here (not the accepted answer, but the one from Adam Danz).
plot(1:6)
row1 = {'1' '' '3' '' '5' ''};
row2 = {'' '2' '' '4' '' '6'};
labelArray = [row1; row2];
tickLabels = sprintf('%s\\newline%s\n', labelArray{:});
xlim([1 6])
xticks(1:6)
xticklabels(tickLabels)

More Answers (0)

Community Treasure Hunt

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

Start Hunting!