Saving Handles in M-files
Graphics M-files frequently use handles to access property values and to direct graphics output to a particular target. MATLAB provides utility routines that return the handles to key objects (such as the current figure and axes). In M-files, however, these utilities may not be the best way to obtain handles because:
Save Information First
It is a good practice to save relevant information about MATLAB's state in the beginning of your M-file. For example, you can begin an M-file with
cax = newplot;
cfig = get(cax,'Parent');
hold_state = ishold;
rather than querying this information each time you need it. Remember that utility commands like ishold obtain the values they return whenever called. (The ishold command issues a number of get commands and string compares (strcmp) to determine the hold state.)
If you are temporarily going to alter the hold state within the M-file, you should save the current values of the NextPlot properties so you can reset them later.
ax_nextplot = lower(get(cax,'NextPlot'));
fig_nextplot = lower(get(cfig,'NextPlot'));
.
.
.
set(cax,'NextPlot',ax_nextplot)
set(cfig,'NextPlot',fig_nextplot)
[ Previous | Help Desk | Next ]