MATLAB Answers

Plotting multiple graphs in one figure

111 views (last 30 days)
Salma
Salma on 27 May 2011
I want to put 3 curves in one graph but i couldn't use the hold on function because for each curve i run several times to get the values i want so any idea how to do it without the hold on function??

  3 Comments

Ben Mitch
Ben Mitch on 27 May 2011
Hi Salma - it's not clear what the problem is. What do you mean by "i run several times"? Run what? Why does that obstruct the use of "hold on"?
Salma
Salma on 27 May 2011
i run the code several times because the input is random
Walter Roberson
Walter Roberson on 27 May 2011
Please show the structure of your code. It is not clear why "hold on" would not work for you.

Sign in to comment.

Answers (4)

Jan
Jan on 27 May 2011
If you want to avoid "hold on" for any reasons (which I cannot understand), try this initially:
axes('NextPlot', 'add')

  0 Comments

Sign in to comment.


Samer Husam
Samer Husam on 30 Aug 2012
try this:
curve 1: x1,y1
curve 2: x2,y2
curve 3: x3,y3
figure (1)
plot(x1,y1,x2,y2,x3,y3)

  0 Comments

Sign in to comment.


Igor
Igor on 27 May 2011
maybe
plot(gca,x1,y1)
plot(gca,x2,y2)

  1 Comment

Walter Roberson
Walter Roberson on 27 May 2011
Igor, under the default settings, the second plot would overwrite the first. Using "hold" or setting NextPlot are necessary to prevent that.

Sign in to comment.


Walter Roberson
Walter Roberson on 27 May 2011
If you are not specifically creating a new figure each time, then you could switch to using line() instead of plot()

  0 Comments

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!