Need to line up two graphs on same plot

I am using
[AX,H1,H2] = plotyy(time,Y1,time,Y2);
The x-axis(time) are the same for both. The green and blue graphs in the image both end at the same point, but notice how the green graph starts earlier. I want to line both graphs up so that they have the same starting and ending points. For some of the other graphs I've made, it's done by default. I'm not sure what is different with this set of data...
Any help is appreciated. Thanks! :)

 Akzeptierte Antwort

Azzi Abdelmalek
Azzi Abdelmalek am 11 Jul. 2013

0 Stimmen

Maybe your data contains Nan values?

6 Kommentare

Benson
Benson am 11 Jul. 2013
I checked my data and there are no Nan values.
I think the problem is that the plot is using two separate x-axes. If you look closely at the image, there are some additional ticks that shouldn't be there. They are unlabeled because I have set(AX, 'xTickLabel','') in my code. Not sure why it's happening...
Azzi Abdelmalek
Azzi Abdelmalek am 11 Jul. 2013
post your code
Benson
Benson am 11 Jul. 2013
Bearbeitet: Benson am 11 Jul. 2013
figure;
set(0,'DefaultLineMarkerSize',6);
[AX,H1,H2] = plotyy(time,y1,time,y2);
title(['title']);
xlabel('Time (UTC)');
set(AX, 'xTickLabel','')
set(gca,'XTickLabel',{'00:00','01:00','02:00','03:00','04:00'...
'05:00','06:00','07:00','08:00','09:00','10:00','11:00'...
'12:00','13:00','14:00','15:00','16:00','17:00','18:00'...
'19:00','20:00','21:00','22:00','23:00','24:00'});
set(get(AX(1),'Ylabel'),'String','axistitle','Color','black');
set(get(AX(2),'Ylabel'),'String','axistitle','Color','black')
set(AX(1),'ycolor','black')
set(AX(2),'ycolor','black')
set(AX(1),'box','off')
set(H1,'Marker','.')
set(H2,'Marker','.')
legend('legend1', 'legend2')
axis([13 21-Inf Inf]);
Azzi Abdelmalek
Azzi Abdelmalek am 11 Jul. 2013
Bearbeitet: Azzi Abdelmalek am 11 Jul. 2013
If you just write
close
[AX,H1,H2] = plotyy(time,y1,time,y2);
What do you get?
Benson
Benson am 11 Jul. 2013
Bearbeitet: Azzi Abdelmalek am 11 Jul. 2013
Interesting, the axes are lined up the way I want it to be.
Benson
Benson am 11 Jul. 2013
Bearbeitet: Benson am 11 Jul. 2013
So by trial and error, I found that this line is causing the shift. axis([13 21-Inf Inf]);

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by