How to move around subplots generated by sbiopredictionci?
1 回表示 (過去 30 日間)
古いコメントを表示
Rebeca Hannah Oliveira
2023 年 12 月 5 日
コメント済み: Rebeca Hannah Oliveira
2023 年 12 月 5 日
I don't know if I accidentally changed some plotting configuration, but in the past weeks I have been having an issue with the subplots generated by sbiopredictionci. I can edit the data normally in the subplots and I can delete subplots as I wish, but for some reason I can't move the subplots around in the Figure window. It's like they have been fixed in place somehow.
Is this configurable?
Thanks!
7 件のコメント
Priya Moorthy
2023 年 12 月 5 日
@Rebeca Hannah Oliveira, with Florian's updated function, the second workaround should also work for you now.
採用された回答
Priya Moorthy
2023 年 12 月 5 日
編集済み: Priya Moorthy
2023 年 12 月 5 日
Hi, Rebeca,
Starting in R2023b, SimBiology uses tiledlayout to manage the layout of axes of its plots. This change improves the performance of rendering and resizing plots. Tiled layout also supports setting a global title, x-label and y-label. However, it does constrain your axes position to be fixed to a grid.
As a manual workaround, you can reparent the axes directly to the figure and delete the tiledlayout object. This will allow you to manually move and resize the axes again. For example, where ci_pred is a PredictionConfidenceInterval object:
% Create the plot
fh = ci_pred.plot();
% Get all the axes in the figure
allAxes = findobj(fh, 'type', 'axes');
% Reparent the axes to the figure
[allAxes.Parent] = deal(fh);
% Set the axes units to 'normalized' so they will resize with the figure
[allAxes.Units] = deal('normalized');
% Delete the unused tiled layout manager
delete(findobj(fh, 'type', 'tiledlayout'));
Note that you can combine the middle three actions into a single line of code for convenience:
set(findobj(fh, 'type', 'axes'), 'Parent', fh, 'Units', 'normalized');
Also, please see the following post for a discussion of how to change the layout of your plot programmatically: https://www.mathworks.com/matlabcentral/answers/367190-how-modify-the-number-of-rows-and-columns-of-plots-when-i-plot-a-sbiopredictionci-object.
I hope one of these workarounds help. Please reach out with any further questions.
Best,
Priya
0 件のコメント
その他の回答 (0 件)
コミュニティ
その他の回答 SimBiology コミュニティ
参考
カテゴリ
Help Center および File Exchange で Extend Modeling Environment についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!