MATLAB Answers

Benjamin

How to plot two plotyy plots in the same plot

Asked by Benjamin
on 15 Aug 2011
Latest activity Answered by Nir Dahan
on 25 Aug 2015 at 7:24

I am trying to plot four plots in the same figure. First i plot using plotyy. Then two graphs are created, each with a yaxis.

Now I want to plot another two plots. One using yaxis-1 and one using yaxis-2. How do i do this?

If I do

[ax,h1,h2] = plotyy(...)
hold on
plot(ax(1),...)
plot(ax(2),...)

i don't get all four plots.

Thanks :)

Ben

  1 Comment

Benjamin
on 15 Aug 2011

I mean:
[ax,h1,h2] = plotyy(...)
hold on
plot(ax(1),...)
plot(ax(2),...)

Products

No products are associated with this question.

3 Answers

Answer by Paulo Silva
on 15 Aug 2011
 Accepted answer
[ax,h1,h2] = plotyy(...) 
hold(ax(1))
plot(ax(1),...)
hold(ax(2))
plot(ax(2),...)

The problem was simple, hold on just holds the current axes and your plotyy makes two axes so only one is the current.

  2 Comments

Benjamin
on 15 Aug 2011

Phenomenal, thanks!:)

Rajeev Yadav on 5 Jun 2015

doesnt work


Answer by the cyclist
on 15 Aug 2011
figure
[hax12 line1 hline2] = plotyy(1:10,1:10,1:10,2:11)
set(hax12,'NextPlot','add')
plot(hax12(1),1:10,3:12)
plot(hax12(2),1:10,4:13)

  5 Comments

Paulo Fagandini on 27 Sep 2014

Thanks, this saved me a second day of trials!

Rajeev Yadav on 5 Jun 2015

i tried this but it doesnt work in 2015a

Soroush
on 17 Jul 2015

Thanks!


Answer by Nir Dahan
on 25 Aug 2015 at 7:24

try this one where all vectors are column, of size (N,1)

[ax,h1,h2]=plotyy([x,x,x,...],[y1,y2,y3,...],[X,X,X,...],[Y1,Y2,Y3,...])

  0 Comments


Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply today