Problem changing tick label font size

34 views (last 30 days)
Owen Brandriss
Owen Brandriss on 12 Jun 2023
Answered: Adam Danz on 13 Jun 2023
Hello!
I am trying to change the size of the tick labels in a plot in matlab using the following code:
ax = gca;
ax.FontSize = 40;
This seems to work for most people on this forum, but when I try it, the font size in the tick labels in the figure does not change. However, when I enter
ax.FontSize
in the command window, it returns:
Can someone please explain to me why Matlab seems to store the change in font size, but the font size doesn't actually change in the figure? Thanks! I am using Matlab R2022a
  4 Comments
the cyclist
the cyclist on 13 Jun 2023
Edited: the cyclist on 13 Jun 2023
Can you give a minimal example of some code where this does not work as expected?
Is it the case that even this simplest possible version does not work for you, on a brand-new MATLAB session?
ax = gca;
ax.FontSize = 40;
Perhaps you have a lingering set of axes around that ax is referring to, such that you are not manipulating the axes you think?
Walter Roberson
Walter Roberson on 13 Jun 2023
Also experiment with
FIG = get(groot, 'CurrentFigure');
AX = get(FIG, 'CurrentAxes');
set(AX, 'FontSize', 40)

Sign in to comment.

Answers (1)

Adam Danz
Adam Danz on 13 Jun 2023
We don't have enough information to troublehoot.
One possibility is that the fontsize is not being applied to the intended axes. This could happen if the axes are within a figure with HandeVisibility turned off (e.g. uifigures). In this case, gca will not return the axes within the figure.
To avoid this possibility, instead of relying on gca(), specify the axes handle,
fig = uifigure();
ax = uiaxes(fig);
ax.FontSize = 40;
If this does not solve the problem, providing more information may help.

Community Treasure Hunt

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

Start Hunting!