Create and save figure without drawing
    26 views (last 30 days)
  
       Show older comments
    
    Gabriel Stanley
 on 24 Sep 2022
  
    
    
    
    
    Commented: Gabriel Stanley
 on 26 Sep 2022
            I would like to create figures within a script without actually drawing them, on the assumption that this will save time, RAM, and GPU resources. I would like to save those objects as pictures. However, each figure is a layering of two different datasets. In an interactive setting I would achieve this through the hold on command
A = randi(9,1,15);
B = randi(9,1,15);
MyScatter = scatter([1:15],A)
hold on
MyScatter = scatter([1:15],B)
But this still creates a figure window and draws the objects to the screen.
Is there a way to do what I describe, perhaps via copyobj? And/or am I unlikely to see significant computational savings by doing so?
0 Comments
Accepted Answer
  Mahdi Hayati
 on 24 Sep 2022
        To save figure as picture in your system, without actually showing the figure, first make your figure invisible:
f = figure('visible','off');
then go for your scatter and add them to the ' f ' which is your invisible figure.
3 Comments
  Walter Roberson
      
      
 on 26 Sep 2022
				Layout will not always work until the object is rendered. For example tick labels might not be correct if adding an additional component resized an axes (resizing can affect number of ticks generated)
More Answers (0)
See Also
Categories
				Find more on Creating, Deleting, and Querying Graphics Objects in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

