Why is MATLAB not making multiple plots when I specify separate figures?

107 views (last 30 days)
Hello, I am attemping to plot two separate sets of data on two different figure windows. I used the following code:
figure(1);
plot(theta, p);
figure(2);
plot(theta, T);
But only figure 1 is showing up. I have looked through this forum and I haven't seen any solutions, so some help would be greatly appreciated.

Answers (2)

Voss
Voss on 10 Mar 2023
Edited: Voss on 10 Mar 2023
figure(2)
makes Figure 2 the current figure, if it exists, or creates a new figure called Figure 2 if it does not already exist and makes it the current figure.
It may be that Figure 2 already exists and its Position is outside the range of your monitor(s) or it's very small and you don't notice it.
Regardless, if you want to create a new figure, use
figure()
So this
figure();
plot(theta, p);
figure();
plot(theta, T);
would create two new figures, each with the their own plot(s).
  1 Comment
Guy
Guy on 10 Mar 2023
Great, it's working now. I think I just needed to restart MATLAB. Thank you for your help though.

Sign in to comment.


Image Analyst
Image Analyst on 10 Mar 2023
You could put
close all
at the beginning of your script to close all windows. It should work then, though I'm not sure why it didn't work in the first place.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!