Is there a way to apply "hold on" to some plot objects, but to apply "hold off" to other objects in the same plot?
The example below plots a pcolor object then several lines. I want the pcolor object to remain plotted as if it were "hold on", but as each new line is plotted, I want the old line to disappear, as if the lines were "hold off". (At the time I wrote this, I thought deleting the line handle h2 was not an option: the real code is buried in a GUI currentpoint function which seems to prevent me from accessing h2.)
% Make an example plot
figure;p = peaks; % Get 'peaks' data which comes with Matlab
[nY, nX] = size(peaks);x = 1:nX; y = 1:nY;h1 = pcolor(x, y, peaks); % Want pcolor object to remain
shading flat;hold on; % Applies to all plotted objects
title('Wish we could hold pcolor but not lines')% Plot several lines over top of pcolor plot
nLine = 10; % Number of lines to plot
for iLine = 1:(nLine) h2 = plot(rand(1,10)*nX, rand(1,10)*nY, 'ko-'); % Want 'old' h2 to disappear when 'new' h2 plotted
pause(1); % Allow user to see lines being plotted
end
Best Answer