XTicks change in tiled figure if no breakpoint is set before for loop, even if xticks are used
5 views (last 30 days)
Show older comments
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 Comments
Accepted Answer
Les Beckham
on 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 Comments
More Answers (0)
See Also
Categories
Find more on Data Exploration in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!