I submitted a bug report. Mathworks has verified this is a bug. Unclear if it'll get addressed, so I asked that they at least update the documentation to state the axes object array must be a vector.
linkprop does not work with multidimensional array of objects
4 views (last 30 days)
Show older comments
Bug report: If given an array (not a vector) of objects, then linkprop doesn't link properties for all the objects it is given, but rather a subset of them:
fig=figure;
nrow=3;
ncol=2;
tl=tiledlayout(nrow,ncol);%,'tileindexing','columnmajor');
ax=gobjects(nrow,ncol);
for cnt1=1:nrow*ncol
ax(cnt1)=nexttile;
plot(1:2,3:4)
end
ln=linkprop(ax,{'xlim','ylim'});
ax(1).XLim=[1.5,2.5];
disp('ln.Targets(:).XLim')
ln.Targets(:).XLim
disp('ax(:).XLim')
ax(:).XLim
Which objects do get linked depends on whether 'rowmajor' or 'colummajor' tile indexing are used. It sort-of operates on just the first row/column of objects given in the array, for instance try changing nrow and ncol to be equal to each other. I have the problem in 2023a, seems it's also present in the latest release (2024a) based on the results above.
0 Comments
Accepted Answer
More Answers (1)
Avni Agrawal
on 27 Jun 2024
Edited: Avni Agrawal
on 27 Jun 2024
I seems like there is some sort of a timing issue. Even i'm facing the similar issue. The messages to link the axes are arriving at the client before the messages to register the axes control for each axes, so it's not able to link whichever axes is created last, as its control is not yet created when the message to link it is received.
I would suggest to contact someone from the Mathworks Technical Support: https://www.mathworks.com/support/contact_us.html
I hope this helps.
0 Comments
See Also
Categories
Find more on Migrate GUIDE Apps 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!