How can I avoid repeated figure output after a section break in Live Editor?

19 views (last 30 days)
If I save a figure handle and modify the figure in different sections of my code, the Live Editor keeps re-outputting those figures.
The following code ouputs the figure only once without section breaks, but 3 times with the section breaks present.
f = figure;
plot(magic(5));
% section break
f.Position = [0 0 640 480];
% section break
saveas(f,"magic.png");
If I check for f.Visible, it is already off before the repeated output.
Is it possible to somehow suppress the repeated output of figures after a section break?

Accepted Answer

Cris LaPierre
Cris LaPierre on 23 Aug 2021
I don't believe you can. This behavior is built into the design of live scripts. At each section break if anything has been done to a figure, you get a new snapshot of the figure. Perhaps it's helpful to think of it that way. These are not 3 separate figures, but snapshots of the same figure as it is modified by your code.
  4 Comments
Julian Dönges
Julian Dönges on 26 Aug 2021
What led me to use the Live Editor that way are its control elements (buttons, check boxes etc.). I chose to work with them to avoid the time effort of creating an app (and learning to do so). Their callback functions are not accessable, instead they only allow to run the current code section.
So, in order to enable/disable each task (e.g. selecting values and creating plots, saving plots,...), I structured my code so that each section corresponds to a task. I use a check box and an if...end block for each section to set it to active/inactive, setting it to active runs that section/task. So, it's more about functional than visual separation in my case.
Cris LaPierre
Cris LaPierre on 26 Aug 2021
That is true. Section breaks are used to control what code runs when a control is changed.
The logic, then, is if the code associated with a control modifies a figure, don't you want to see the updated figure?
If you have a reason why not, please do include those details in your feature request. Coding-wise, you clearly know what you are doing

Sign in to comment.

More Answers (0)

Categories

Find more on Environment and Settings in Help Center and File Exchange

Products


Release

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!