XTicks change in tiled figure if no breakpoint is set before for loop, even if xticks are used
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello everyone,
I am plotting several figures within a for loop, each with a tile layout of 3x3. The x-axis is plotted over 0 to 100%. As the default font size is too small, I have made it larger.
Unfortunately, this operation changes the x-axis ticks from the desired [0 20 40 60 80 100] to [0 50 100 0 50 100], even if I also adjust the x-ticks, as can be seen below.
This effect does not occur if I set a breakpoint directly before the for loop, e.g. in the line ticks = ...
The function consists of 440 lines in which several calculations are performed before the figure is created.
Processing the script with the breaktpoint is not an option for me.
I have already tried changing the font size in various places. Everything I have tried seems to lead to this problem.
Do you have any idea how to solve this problem? Is it perhaps a question of the settings?
Thank you :)
This is without the breakpoint:
This is when I do place the breakpoint in e.g. the line with ticks = 0:20:100; (This is what I want it to result in):
figure(2)
tiledlayout(3, 3);
percent = 0:100;
ticks = 0:20:100;
for i = 1:9
nexttile(i)
a = randi(5, 101, 1);
plot(percent, a)
h = get(gca,'XTickLabel');
set(gca,'XTickLabel',h,'fontsize',15)
xticks(ticks)
end
0 commentaires
Réponse acceptée
Les Beckham
le 10 Nov 2023
I can't explain why your approach didn't work, but this seems to work.
figure
tiledlayout(3, 3);
percent = 0:100;
ticks = 0:20:100;
for i = 1:9
nexttile(i)
a = randi(5, 101, 1);
plot(percent, a)
% h = get(gca,'XTickLabel');
% set(gca,'XTickLabel',h,'fontsize',15)
ax = gca;
ax.XAxis.FontSize = 15;
xticks(ticks)
end
4 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Data Exploration dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!