MATLAB Answers

Is it possible to disable plot/figure generation in an entire script?

253 views (last 30 days)
Andrew Reibold
Andrew Reibold on 27 Oct 2014
Commented: Adam Danz on 13 Jan 2020
This is more of a trivial request, but it would be convenient for me if there was a setting I could change before running a script that simply squelches all figure and plot creation.
Does anyone know if this type of thing exists?

  1 Comment

gilles miet
gilles miet on 7 Dec 2018
Hi, In case you know which display functions are called, simply overload them by defing new dummy functions with same name and varargin.
e.g. for plot function:
Create a plot.m in current directory or in any custom path directory as follows:
function plot(varargin)
disp('doing nothing');
end
Ignore matlab warnings telling you you overload a Matlab built-in function (you are doing it on purpose)
When plot is called you get:
>> x=randn(1,10);
>> plot(x)
doing nothing
>>

Sign in to comment.

Accepted Answer

Doug Hull
Doug Hull on 27 Oct 2014
A sneaky way of kind of sort of doing this is:
set(groot,'defaultFigureVisible','off')
To undo this:
set(groot,'defaultFigureVisible','on')
It means the new figures will be visible off. It kind of does what you are looking for, kind of.

  6 Comments

Show 3 older comments
Anthony Castellano
Anthony Castellano on 28 Jun 2018
Hi, I have a similar situation. I'm worried that that command will still compute the figures, and then not show them. Is that right?
The reasons I want to not plot my plots is because in some situations I don't want to perform the hefty computation.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!

Translated by