%macro plot3d(data,x,y,z,xlo,xup,xdel,ylo,yup,ydel); /* Does 5 rotated 3d plots. INPUT: data set. x, y and z coordinates lower and upper limits and spacing for plotting grid. */ proc g3grid data=&data out=zzzgrid; grid &x*&y=&z/ axis1=&xlo to &xup by &xdel axis2=&ylo to &yup by &ydel; run; proc g3d data=zzzgrid; plot &x*&y=&z; run; proc g3d data=zzzgrid; plot &x*&y=&z/rotate=45; run; proc g3d data=zzzgrid; plot &x*&y=&z/rotate=90; run; proc g3d data=zzzgrid; plot &x*&y=&z/rotate=135; run; proc g3d data=zzzgrid; plot &x*&y=&z/rotate=180; run; %mend plot3d; /* You only have to submit the macro code once. You can then repeatedly call the macro:*/ %plot3d(ma2612.eg8_1,z1,z2,y1,-2,2,.1,-2,2,.1); %plot3d(ma2612.eg8_1,z1,z2,y2,-2,2,.1,-2,2,.1); %plot3d(ma2612.eg8_1,z1,z2,y3,-2,2,.1,-2,2,.1); %plot3d(ma2612.eg8_1,z1,z2,y4,-2,2,.1,-2,2,.1); %plot3d(ma2612.eg8_1,z1,z2,y5,-2,2,.1,-2,2,.1); %plot3d(ma2612.eg8_1,z1,z2,y6,-2,2,.1,-2,2,.1);