Help with multiple plots and axis

3 views (last 30 days)
AVP
AVP on 14 Oct 2014
Commented: AVP on 15 Oct 2014
Hi,
I'm trying to find information on how to plot 5 different plots on the same plot, but using the left y-axis for 2 of them and the right y-axis for 3 of them. They are very different in scale and so I need them to be overlapped but tied to different scales. I've seen quite a few videos and forum posts on how to do multiple graphs OR multiple axis but I haven't seen anything on doing both at the same time. I've tried combining both but I keep getting errors. Any help is greatly appreciated.
Thanks.

Answers (1)

Andrew Bliss
Andrew Bliss on 15 Oct 2014
Something like this might work:
figure
ax(1)=axes; hold on
ax(2)=axes; hold on
set(ax(2),'YAxisLocation','right','color','none','xcolor','r','ycolor','r')
plot(ax(1),1:10,rand(1,10))
plot(ax(1),1:10,.3*rand(1,10),'.')
plot(ax(1),1:10,.6*rand(1,10),'+')
plot(ax(2),1:10,50*rand(1,10),'r')
  1 Comment
AVP
AVP on 15 Oct 2014
That got me closer but the plot(ax(1),1:10,rand(1,10))doesn't work because it's trying to plot against the value of the axis.
The issue I keep having is that setting the second axis deletes the plot that I did on the first axis.
This gets me the closest but it puts all of them on the second axis: figure ax(1)=axes; hold on; ax(2)=axes; hold on; line(T,LVDT,'Color','r') line(T,SyncLock,'Color','b')
set(ax(2),'YAxisLocation','right')
line(T,PSIGstow,'Color','y') line(T,PSIGdeploy,'Color','g') line(T,LoadCell,'Color','c')

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!