Why does figure(2) keeps overwriting the previous figure?

73 vues (au cours des 30 derniers jours)
A LL
A LL le 10 Août 2021
Commenté : Leon Hülsmann le 22 Avr 2023
I try to open figure(2) in a different window but it keeps overwriting the previous figure.
I am currently working with MATLAB R2020a.
I tried something very simple as such:
figure(1), plot([0:10],[0:10])
figure(2), plot([0:10],[10:-1:0])
figure(3), plot([0:10],rand(1,11))
figure(1) and (3) always open in a separate window but figure(2) keeps overwriting figure(1).
See attached figures
Does anyone know how to fix this?
Thank you
  7 commentaires
A LL
A LL le 10 Août 2021
Modifié(e) : A LL le 10 Août 2021
I am just running the commands in my MATLAB Command Window and it keeps doing the same thing.
There is no problem for figure(3), (4), (5) or anything over.
The problem is only for figure(2).
I have attached a screenshot of the commands I'm running in my MATLAB Command Window.
Here is the code I am running and the command Risk asked for.
>> figure(1), plot([0:10],[0:10])
>> figure(2), plot([0:10],[10:-1:0])
>> figure(3), plot([0:10],rand(1,11))
>> which figure -all
built-in (C:\Program Files\MATLAB\R2020a\toolbox\matlab\graphics\figure)
Thank you
Leon Hülsmann
Leon Hülsmann le 22 Avr 2023
I know I'm late to the party, but if you run clf at the beginning of your script, this happens for whatever reason

Connectez-vous pour commenter.

Réponses (1)

Sina Rangriz
Sina Rangriz le 10 Août 2021
Modifié(e) : Sina Rangriz le 10 Août 2021
use save command to see whether it is working
surf(peaks)
savefig('MySavedPlot.fig')
close(gcf)
I was running your three lines in matlab 2020b and it shows seperate figures with correct labels.
check your other parts of your code to see whether something shadows your plot
  2 commentaires
A LL
A LL le 10 Août 2021
Thank you Sina Rangriz for your answer.
I just wanted to display the figures without saving them to compare them on my screen when I run a code.
I can save them just fine an them open the figures in different windows but my problem is that I want to see my different plots in different windows when I run my code.
Thank you
Sina Rangriz
Sina Rangriz le 10 Août 2021
This problem is kinda weird because on my computer your attached codes working well....
figure(n) finds a figure in which the Number property is equal to n, and makes it the current figure. If no figure exists with that property value, MATLAB® creates a new figure and sets its Number property to n.
try with empty figure....like:
figure, plot([0:10],[0:10])
figure, plot([0:10],[10:-1:0])
figure, plot([0:10],rand(1,11))

Connectez-vous pour commenter.

Catégories

En savoir plus sur Specifying Target for Graphics Output dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by