Rather than hard-coding all the date values, perhaps you could use something more like this, that lets SAS do it for you (SAS has some 'smarts' built-in behind the scenes, that tries very hard to handle the irregular number of days in the months, etc, for you)...
symbol1 value=none interpol=join c=blue;
axis1 label=none order=('01jan1987'd to '01jan1989'd by month2) minor=none offset=(0,0); axis2 label=none order=(0 to 200 by 50) minor=none offset=(0,0);
title "IBM Stock Price, 1987 & 1988"; proc gplot data=sashelp.stocks (where=(stock='IBM')); format date monname3.; format close dollar8.0; plot close*date / haxis=axis1 vaxis=axis2 autovref cvref=graydd href='01jan1988'd chref=graydd; run;
... View more