MATLAB Answers

Benjamin
0

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

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

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

Phenomenal, thanks!:)

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

Thanks, this saved me a second day of trials!

i tried this but it doesnt work in 2015a

Soroush
on 17 Jul 2015

Thanks!


Answer by Nir Dahan
on 25 Aug 2015

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


Join the 15-year community celebration.

Play games and win prizes!

Learn more
Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!