Problem changing tick label font size

48 visualizzazioni (ultimi 30 giorni)
Owen Brandriss
Owen Brandriss il 12 Giu 2023
Risposto: Adam Danz il 13 Giu 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 Commenti
the cyclist
the cyclist il 13 Giu 2023
Modificato: the cyclist il 13 Giu 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 il 13 Giu 2023
Also experiment with
FIG = get(groot, 'CurrentFigure');
AX = get(FIG, 'CurrentAxes');
set(AX, 'FontSize', 40)

Accedi per commentare.

Risposte (1)

Adam Danz
Adam Danz il 13 Giu 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!

Translated by