Your JCL might be similar to the following example. In this example, the graphics output is sent directly to the punch, specified by the file reference PU; however, going directly to the punch distorts the output.
//HPOUTPUT JOB (,,2,2),
// USER=xxxxxx,PASSWORD=xxxxxx
//SASSTEP EXEC SAS
//PU DD
SYSOUT=B
OPTIONS PAGESIZE=66 NONOTES;
GOPTION DEVICE=HPLJS2 GSFLEN=80 GSFNAME=PU;
COMMENT Test plotting from SAS ;
DATA; INPUT X Y;CARDS;
1 1
2 2
3 3
PROC GPLOT ; PLOT X*Y;
To avoid the distortion, make the following modifications to the JCL.
Direct the graphics output to this dataset rather than to the punch. In the following example, the file reference for this dataset is GSASFILE.
The final line of the following JCL should be added. These statements will direct the graphics output from the dataset to the punch.
//HPOUTPUT JOB (,,2,2),
// USER=xxxxxx,PASSWORD=xxxxxx
//SASSTEP EXEC SAS
//GSASFILE DD UNIT=SYSDA,DCB=(RECFM=FB,BLKSIZE=6160,LRECL=80),
// SPACE=(TRK,(10,3)),DISP=(NEW,PASS)
//PU DD
SYSOUT=B,DCB=(RECFM=FB,BLKSIZE=6160,LRECL=80)
OPTIONS PAGESIZE=66 NONOTES;
GOPTION DEVICE=HPLJS2 GSFLEN=80;
COMMENT Test plotting from SAS ;
DATA; INPUT X Y;CARDS;
1 1
2 2
3 3
PROC GPLOT ; PLOT X*Y;
COMMENT Moving data from file to punch ;
DATA; INFILE GSASFILE; FILE PU; INPUT; PUT _INFILE_;