How can I reduce the distance between the numbers of Xaxis and the plot?

14 vues (au cours des 30 derniers jours)
Armindo
Armindo le 23 Fév 2016
Modifié(e) : David le 23 Avr 2019
Any way to change the distance between the numbers and the actual plot?
  3 commentaires
Star Strider
Star Strider le 23 Fév 2016
One option is to simply reduce the font size of the tick labels.
Otherwise, to the best of my knowledge, there is no way to adjust that. You would have to turn them off (easily enough done) and then replace them with a text object (also easily enough done).
The problem is that the text object distance from the x-axis may not scale properly if the plot size changes.
I would search Yair Altman’s Undocumented MATLAB site. If there is a way to change the distance and have it scale properly, you will find it there.
Dek Na
Dek Na le 29 Sep 2018
Modifié(e) : Dek Na le 30 Sep 2018
This answer on StackOverflow worked for me: https://stackoverflow.com/a/45103006. S2 value depends on your figure size and does not scale like the regular tick values. If you change the last line of code to be
ax.XTickLabel = [' ']; %instead of: ax.XTickLabel = [];
you prevent the XLabel from overlapping the XTickLabel. Maybe someone could modify that code to shift YTickLabel as well. I tried without success.

Connectez-vous pour commenter.

Réponses (3)

Explorer
Explorer le 23 Fév 2016
Modifié(e) : Explorer le 23 Fév 2016
% Distance between x-axis is 1 units
x=0:1:50;
y=sin(x);
subplot(2,1,1), plot(x,y)
% Reducing distance between x-axis to 0.5 units
x=0:0.5:50;
y=sin(x);
subplot(2,1,2), plot(x,y)
Generally, this is how we reduce spacing size of x-axis. To know specifically, you have to show us the case in which you want reduction.

Armindo
Armindo le 23 Fév 2016
Modifié(e) : Armindo le 23 Fév 2016
Yes Amos you are right.
The distance between the numbers displayed below the plot and the box limit (bottom plot limit or the x-axis line)
I have several subplots and I need to put the numbers very close to the X-axis line to save space.
Explorer I dont want the horizontal distance between numbers I want the vertical distance between the X-axis line and the numbers. In other words I want to put the numbers just below the X-axis line.
  2 commentaires
Explorer
Explorer le 23 Fév 2016
Modifié(e) : Explorer le 23 Fév 2016
I still did not get what actually you want to do. Can you upload your stuff here?
Armindo
Armindo le 23 Fév 2016
________________ Axis
0 1 2
________________ Axis (I want this without space between line and numbers)
0 1 2

Connectez-vous pour commenter.


David
David le 23 Avr 2019
Modifié(e) : David le 23 Avr 2019
I would also like an answer to this question.
I've tried making the tick label interpreter latex and then adding \vspace{-1mm} calls but all whitespace commands seem to be ignored.

Community Treasure Hunt

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

Start Hunting!

Translated by