Is there an error in the subplot function in 2025a version
Show older comments
The following lines were added to the subplot function in version 2025a (line 291):
if ancestorFigure.Units == "normalized"
waitfor(ancestorFigure,'FigureViewReady',true);
end
That code isn't in version 2024a.
Because of this, I'm experiencing issues that cause the code to stop running when using subplot in this way:
t = 0:0.1:10; y = sin(t);
figure('Units','normalized','Position',[0 0 0.3 0.3])
subplot(1,2,1)
plot(t,y)
subplot(1,2,2)
plot(y,t)
I deleted those lines and everything works fine.
Has anyone else encountered this error?
Does anyone understand the need for those lines of code?
3 Comments
Walter Roberson
on 2 Jun 2025
Edited: Walter Roberson
on 2 Jun 2025
Works for me in R2025a for Intel Mac in regular .m files.
However it appears to hang when the code is in a mlx (LiveScript) file.
Carlos M. Velez S.
on 2 Jun 2025
It doesn't happen with tiledlayout(). I guess they assume everyone has transitioned to that.
t = 0:0.1:10; y = sin(t);
figure('Units','normalized','Position',[0 0 0.3 0.3])
tiledlayout(1,2)
nexttile; plot(t,y)
nexttile; plot(y,t)
Answers (1)
Cris LaPierre
on 3 Jun 2025
0 votes
This behavior is not intentional. I'd suggest reporting this here:
2 Comments
Carlos M. Velez S.
on 3 Jun 2025
Adam Danz
on 3 Jun 2025
Workaround addressed in https://www.mathworks.com/matlabcentral/discussions/tips/881887
Categories
Find more on Environment and Settings 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!