MATLAB Answers

Matlab figure(s) suppression not working

7 views (last 30 days)
Preetham Manjunatha
Preetham Manjunatha on 3 Apr 2018
Edited: Seren on 15 Feb 2021
Hello:
I have some issue suppressing the figure(s) in Matlab. I referred to these solutions Figure suppression 1 and Figure suppression 2.
I am using Matlab 2017b. First, I used both commands at the top of my main.m file:
set(groot, 'DefaultFigureVisible', 'off');
set(0, 'DefaultFigureVisible', 'off');
But, no help. Figures are still showing up while running the main. Please note that I have figure(s) callback inside few functions. In addition, I have a waitbar command running. While starting in cmd, if I use:
matlab -noFigureWindows
Figures including the Waitbar are not displayed. Is there any way I can only suppress the figure(s) running in a loop?
Thanks,
  2 Comments
Preetham Manjunatha
Preetham Manjunatha on 18 May 2020
No, but I would suggest to have a flag to turn the figures on/off.

Sign in to comment.

Answers (2)

Walter Roberson
Walter Roberson on 18 May 2020
It is not possible to prevent figures from displaying when figure() is called. When figure() is called to create a new figure, and when figure() is called to bring a figure into focus, then in both cases, the figure is always made visible, even if only briefly.
The only way to prevent this is to be running in a mode that cannot display graphics. For example if you have the Parallel Computing Toolbox, you could run the graphics on a parallel process, as those processes cannot affect the graphic output. You can still render and saveas() or print() inside those processes (though I do not promise that all graphics effects can be used.)

Seren
Seren on 15 Feb 2021
Edited: Seren on 15 Feb 2021
In my own scripts, I avoid using
set(groot, 'DefaultFigureVisible', 'off|on')
to "control" the displaying of figures. Using 'visible', 'off|on' in a figure statement, e.g.:
figure ('visible','off','name','Fig. 1', 'NumberTitle','off','position', [200 486 1235 428]);
works.

Community Treasure Hunt

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

Start Hunting!

Translated by