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

조회 수: 71 (최근 30일)
A LL
A LL 2021년 8월 10일
댓글: Leon Hülsmann 2023년 4월 22일
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
A LL
A LL 2021년 8월 10일
편집: A LL 2021년 8월 10일
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 2023년 4월 22일
I know I'm late to the party, but if you run clf at the beginning of your script, this happens for whatever reason

댓글을 달려면 로그인하십시오.

답변 (1개)

Sina Rangriz
Sina Rangriz 2021년 8월 10일
편집: Sina Rangriz 2021년 8월 10일
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
A LL
A LL 2021년 8월 10일
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 2021년 8월 10일
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))

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Graphics Object Properties에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by