I have multiple figures open, and I want to update them independently during runtime. The following toy example should clarify my intention:
clf;
figure('name', 'a and b'); % a and b should be plotted to this window
hold on;
ylim([-100, 100]);
figure('name', 'c'); % only c should be plotted to this window
a = 0;
b = [];
for i = 1:100
a = a + 1;
b = [b, -i];
c = b;
xlim([0, i]);
plot(i, a, 'o');
plot(i, b(i), '.r');
drawnow;
end
The problem here is that when I open the second figure, I cannot tell the plot functions to plot to the first one instead of the second (and only c should be plotted to the second).
You can use something like
The command will also set the figure visible and on top of everything.
You can switch back and forth between the figures as necessary by issuing the same
figurecommand. Alternatively, you can use the handle to the figure as well:and then issue
figure(h)instead of using numeric indices. With this syntax, you can also prevent the figure from popping up on top by using