Create and activate figures by name
Updated 8 Jan 2015
Finds and activates, or creates, figure with user-specified name.
If no name is provided, creates figure named "untitledn" (where n is incremented to result in a unique name).
If figure named 'My Figure' exists, it will be activated (brought to the front and shown). Otherwise, it will be created.
h = togglefig('My Figure');
Also returns the handle to the specified or created figure.
Creates and activates new figure named untitled1, untitled2, ...
Note: You can subsequently activate these figures with, for instance, togglefig('untitled1').
NOTE: This example requires the Image Processing Toolbox
im = imread('cameraman.tif');
for ii = 1:10
thresh = ii/20;
title(sprintf('Threshold = %0.2f',thresh));
I've found this to be exceptionally useful in algorith-development
mode, particularly when iterating on cells in the cell-mode editor. (I
use this function in almost every mfile I write these days.)
Brett Shoelson (2023). Create and activate figures by name (https://www.mathworks.com/matlabcentral/fileexchange/18220-create-and-activate-figures-by-name), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform CompatibilityWindows macOS Linux
- MATLAB > Graphics > Graphics Objects >
Inspired: Cell Cycle Analysis, Cell Cycle Analysis
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!
Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Fixes a bug when togglefig is called with no input arguments. Thanks to Danilo for pointing it out!
I added a new (optional) input argument that triggers a CLF (clear-figure) command.
Minor modification to suppress handle generation if no output is requested.