MATLAB: Show month and year of a dataseries on the x axis

show month and year on x axis

Hi,
I have this code which displays the respective year on the x axis
%SPX
SPX=dataSet(:,2);
%VIX
VIX=dataSet(:,3);
plotyy(dates,SPX,dates,VIX);
%datevc divides the date in different columns, first colum is the year,
%second the month and thrid the day
d=datevec(dates);
%Takes just the year (first column)
d=d(:,1);
%takes every year just once
[a,idx]=unique(d(:,1),'first');
set(gca,'xtick',dates(idx),'xticklabel',a)
[ax,h1,h2]=plotyy(dates,SPX,dates,VIX);
set(ax(1),'ycolor','k')
set(ax(2),'ycolor','k')
set(ax,'xtick',dates(idx),'xticklabel',a)
this worked well for a plot I needed, but I would like to plot a shorter time series where I can see the month as well as the year on the x axis
but there are only months on the x axis, what do I need to ammend in my code to be able to see both, month and year?

Best Answer

Try using the following submission on FEX: