Managing SAS Output under Windows |
Producing Graphics on Your Display |
In most cases, output is automatically displayed on your monitor when you run a SAS/GRAPH procedure; it is not necessary to specify a SAS/GRAPH device driver. Information about your graphics display is stored in a Windows information file and is automatically used by SAS during an interactive SAS session.
Here is a simple example of how to produce a graphic:
data hat; do x=-5 to 5 by .25; do y=-5 to 5 by .25; z=sin(sqrt(x*x+y*y)); output; end; end; proc g3d data=hat; plot y*x=z; title 'Cowboy Hat with G3D'; run; quit;
The following display shows the output for this program:
If you use the DEVICE= option in the GOPTIONS statement to route your graphics to a hard-copy device, and then you want to return to using your monitor to display graphics, you must specify a driver. Submit the following statement to display graphics output on your monitor:
goptions device=win;
You should also use the WIN device driver to produce graphics on your display when you run your SAS job in batch mode.
If you specify that your program output is to be displayed in HTML, your graphic is converted to a .GIF file and stored in the same folder as your SAS data set. For more information, see SAS Output Delivery System: User's Guide.
Printing Graphics |
You can use two methods to print output from SAS/GRAPH:
Use the SAS/GRAPH generic driver with the Windows printer driver for your device (supplied with Windows or with your output device). This method allows SAS/GRAPH to send generic graphics commands to the Windows printer driver, which then translates the commands to a format that the printer can use.
Use a SAS/GRAPH printer driver to create a printer-specific graphics stream that can be sent directly to the device. When you use a SAS/GRAPH printer driver, SAS bypasses the Windows printer drivers and creates printer-ready output for your device. The SAS/GRAPH printer driver is also called a SAS/GRAPH native print driver, which means that the driver creates output by using the printer language that is native to the target device. SAS/GRAPH printer drivers under Windows are similar to those drivers used by SAS on mainframe and UNIX operating environments.
After SAS prepares output for a printer (by using either Windows printer drivers or a SAS/GRAPH printer driver), the output is sent to the Windows printer, which then queues it for printing on the device of your choice. SAS/GRAPH Generic Printer Drivers Compared with SAS/GRAPH Native Printer Drivers illustrates how you can use the two sets of printer drivers within SAS/GRAPH to produce output for a given device.
SAS/GRAPH Generic Printer Drivers Compared with SAS/GRAPH Native Printer Drivers
The method that you choose depends on the output device that you are using. For more information, see Choosing between a SAS/GRAPH Native Driver and the WINPxxx Driver. You can control both graphics printing methods by using either the Print and Print Setup dialog boxes or the SYSPRINT= option and the GOPTIONS DEVICE= statement.
For more information, select the following topics:
To print a graphic by using the SAS/GRAPH generic device drivers with the Windows printer drivers:
From the File menu, select Print Setup and verify that the Printer field in the Print Setup dialog box lists the correct Windows printer driver and port. You can use the Print Setup dialog box to select any printer driver/port combinations that you have installed. (To install new drivers and port combinations, you can use the Add Printer Wizard in Windows.)
Alternatively, you can use the SYSPRINT system option to assign the destination printer. For example,
options sysprint='HP LaserJet III';
Note that you can assign only printer driver names that have been previously configured in Windows.
Run your SAS/GRAPH program with the following graphic options:
goptions device=winp xxx;
The value of WINPxxx you specify depends on the type of output device that you use to print your graph:
The orientation of graphics output is determined by the following:
If you specify the ROTATE= graphic option, the output is oriented according to the value that you specify for ROTATE. For example, suppose you specify
goptions rotate=landscapeThen the output is oriented as landscape, regardless of the settings in the Print Setup dialog box.
If you do not use the ROTATE= graphic option, the output is oriented according to the settings in the Print Setup dialog box.
Note: Graphics printing is affected by the margins that are specified in the Page Setup dialog box. If you modify the margins when printing graphics and your intention is to keep the graphic proportional, you must change the top and bottom margins by the same amount you change the left and right margins.
SAS/GRAPH native drivers produce output in the native language of the target device. Examples of SAS/GRAPH native drivers include:
PS | |
HPLJS3 |
produces output in the PCL5 language that is used by Hewlett Packard LaserJet III printers. |
HP7550 |
produces HPGL output that is used by Hewlett-Packard 7550 plotters. |
After the SAS/GRAPH native printer driver has produced output in the native language of the target device, SAS then routes the output to the device using the Windows printer. SAS bypasses the Windows driver that is currently associated with the target device, but it does respect the destination that is specified in the Print Setup dialog box when deciding where to send the output.
To print a graph by using a SAS/GRAPH printer driver, run your SAS/GRAPH program with the following graphic options:
goptions device=driver-name;
where driver-name is the name of a valid SAS/GRAPH device driver. Consider this example,
goptions device=hplj5p3;
This statement formats the graph for the Hewlett Packard LaserJet Series V printer. You can view the complete list of SAS/GRAPH drivers by submitting the PROC GDEVICE statement.
To print a graph to a printer file (also called a graphics stream file, or GSF) instead of directly to a printer, use the GSFNAME option in the GOPTIONS statement and use a filename or a fileref to specify where you want the output. For example:
filename graphout "graphpic.prn"; goptions gsfname=graphout gsfmode=replace device=hpljs2;
You can preview a graph that you create and, at the same time, format it for optimal display on the device of your choice. To preview the graph before you print it, run your SAS/GRAPH program with the following GOPTIONS statement:
goptions targetdevice=driver-name;
where driver-name is either one of the WINPxxx drivers or a SAS/GRAPH native driver.
By specifying a target device, SAS/GRAPH can format the graph with colors and attributes that are appropriate for the target printer. To print the graph after it is displayed, select the File menu and then select Print.
Note: If you do not specify a target device before you create the graph, SAS/GRAPH will prompt you (in the Print dialog box) for a device driver name when you attempt to print the graph that you are previewing. (In most cases the WINPRTM or WINPRTC driver is specified by default. The graph colors, orientation, and sizing might not be optimal for the output device you specify.
When deciding whether to use SAS/GRAPH native drivers or the WINPxxx series of drivers, consider such factors as the device that you are using and the type of output that you want to produce. Note the following specific considerations:
If no Windows printer driver is available for your device, use a SAS/GRAPH native driver.
If you have a device for which there is no SAS/GRAPH native driver, use the WINPxxx driver, if there is a Windows printer driver available for the device. In cases where a new model of hard-copy device becomes available between releases of SAS and the hardware vendor provides a new Windows driver that uses new features of the device, you can use a WINPxxx driver to take advantage of those features.
If you want to use options such as HSIZE= or VSIZE= to customize the size specifications used in your graph, using SAS/GRAPH native drivers usually produces more reliable results.
To use TrueType fonts in your SAS/GRAPH output, use one of the WINPxxx drivers and specify the font just as you would specify one of the installed hardware fonts for your printer. For more information about TrueType fonts, see Using TrueType Fonts with SAS/GRAPH Software.
Importing Graphics from Other Applications |
SAS/GRAPH lets you import bitmap and vector graphics that were created by other software applications. SAS/GRAPH provides these benefits:
You can create your graphic using another graphics editor, then import the graphic into SAS/GRAPH to produce output on a specialized device.
You can merge clip art and graphs from other applications with the graphs that you create in SAS/GRAPH.
You can import bitmap graphics into these SAS windows:
GRAPH window. The imported graphic becomes a new GRSEG entry in the current catalog.
Graphics Editor. The imported graphic becomes part of the current graph.
Image editor window. The imported graphic becomes a new image.
SAS provides two ways to import bitmap graphics into SAS/GRAPH:
From the application that you used to create the graphic, copy the graphic to the Windows clipboard; then switch to your SAS Session and paste the graphic into the SAS/GRAPH window, as described in Pasting Graphics from the Windows Clipboard.
From the SAS/GRAPH window (or the Graphics Editor or Image Editor) import the graphics file by using the Import Image dialog box, as described in Importing a Graphics File from within a SAS/GRAPH Window.
To import vector graphics, use the GIMPORT procedure to import computer graphics metafile (CGM) files. The imported files are stored as GRSEG catalog entries. This method preserves the individual graphic objects in the imported graph, whereas the other methods treat the imported graphic as a single (uneditable) bitmap. For more information about PROC GIMPORT, see SAS/GRAPH: Reference.
If the tool that you use to create the source graphics is a Windows application, then you can use the Windows clipboard to copy the graphics to your SAS session as follows:
From the application that you used to create the graphic, select the graphic and copy it to the clipboard using the copy procedures for your graphics tool.
Switch to your SAS session (or start your SAS session, if it is not already running).
With the SAS/GRAPH window active, select Paste from the Edit menu. The graphic is pasted into the SAS/GRAPH window.
SAS/GRAPH provides import filters to translate graphics files that were created in other applications to a format that you can use with SAS.
You can import graphics from other applications that produce files in any of the formats that are shown in the following table:
Graphics File Format | File Extension |
---|---|
Microsoft Windows bitmap | BMP |
Microsoft Windows metafile | WMF |
enhanced metafile | EMF |
Device independent bitmap | DIB |
JPEG format | JPG |
graphic interchange format (GIF) | GIF |
tag image file format (TIFF) | TIF |
PC Paintbrush | PCX |
Truevision Targa | TGA |
Encapsulated PostScript Interchange (EPSI) | PS |
Portable Network Graphics | PNG |
Photo CD image | PCD |
Portable Pixmap | PBM |
X Window bitmap | XBM |
X Window dump | XWD |
To import bitmap graphics into SAS/GRAPH:
Make the GRAPH window the active window and then select Import Image from the File menu.
Use the Import Image dialog box to select the source directory and graphics file. The Format field must show the correct source format; the field indicates which import filter SAS/GRAPH will use. You can have SAS automatically detect the file format of the file to import by selecting AUTO as the format. Click OK.
Note: Automatic file format detection using AUTO does not detect the DIB, EMF, and WMF file formats
You can also include IMAGE catalog entries in your graphs. For information about including IMAGE catalog entries, see SAS Help and Documentation.
Exporting Graphics for Use with Other Applications |
SAS provides the following methods of exporting graphics created in SAS/GRAPH for use with other word processing or desktop publishing packages, or for display on the Internet or intranet:
Export the graphics to a file from the GRAPH window, Graphics Editor, or Image Editor, as described in Exporting a Graphic to a File from a SAS/GRAPH Window.
Pasting the contents of the Windows clipboard into the target application (as a bitmap), as described in Pasting Graphics from SAS/GRAPH into other Windows Applications.
Create a computer graphics metafile (CGM) file for use with a specific graphics package, using drivers that are included with SAS, as described in Creating CGM Files for Export to Other Applications.
Create a Windows metafile for use with another Windows application, as described in Creating WMF (Windows Metafile) Files for Export to Other Applications.
You can also use SAS/GRAPH to create GIF and VRML files for use with Web browsers, PDF files for use with the Adobe Acrobat reader, and many other useful types of graphics files. For more information about how to create these types of files, see SAS/GRAPH: Reference and SAS/GRAPH in SAS Help and Documentation.
SAS/GRAPH provides export filters to translate graphics that were generated in SAS/GRAPH into formats that you can use with other applications, such as spreadsheet and desktop publishing programs.
You can export graphics from SAS/GRAPH in any of the formats that are shown in the following table:
Graphics File Format | File Extension |
---|---|
Microsoft Windows bitmap | BMP |
Microsoft Windows metafile | WMF |
enhanced metafile | EMF |
Device independent bitmap | DIB |
JPEG format | JPG |
graphic interchange format (GIF) | GIF |
tag image file format (TIFF) | TIF |
Adobe PostScript | PS |
Encapsulated PostScript Interchange (EPSI) | PS |
Portable Network Graphics | PNG |
Portable Pixmap | PBM |
To export a graph from the GRAPH window:
Make the GRAPH window the active window and select Export Image from the File menu.
In the Export Image dialog box, select the target file format.
Specify the directory and filename for the exported graphic. Click OK.
For more information about exporting graphics to a SAS IMAGE catalog entry from the Image editor, see SAS Help and Documentation for SAS/GRAPH.
A quick way to export graphics from SAS to another Windows application is to use the Windows clipboard. When you copy information from SAS/GRAPH to the clipboard, you can then paste that information into any application that accepts DIB, BMP or WMF input.
To copy information from SAS/GRAPH to the clipboard:
From the GRAPH window, hold down the left mouse button and drag the mouse over the portion of the graph that you want to copy. A selection box marks off the selected area as you move the mouse. When you are finished, release the mouse button.
If you do not select an area of the graph to copy, the next step will copy the entire graph to the clipboard.
With the GRAPH window still active, press CTRL+C (or select Copy to Paste Buffer from the Edit menu).
This action copies the graph to the clipboard. You can then return to the target application and paste the graph (typically by using the Paste or Paste Special options in the target Windows application). For more information about how to paste information from the clipboard, see the documentation for the other Windows application.
You can export graphs from SAS/GRAPH to other graphics packages by using drivers that were developed specifically for those packages. When you use computer graphics metafiles (CGMs) as the medium of transport between packages, the graph retains its separate components so that you can independently edit and size it. The editing capabilities that you can use depend on the target graphics package.
To create a CGM from SAS/GRAPH, set GOPTIONS as follows:
filename fileref 'filename.cgm'; goptions device=cgmxxxx gsfname=fileref gsfmode=replace;
where CGMxxxx is the appropriate CGM driver for your target application, and filename.CGM is the name of the file that you want to create. CGMOFML and CGMOFMP are the recommended device drivers for all CGM output. If CGMOFML and CGMOFMP are not adequate for the receiving software, then you can use the devices in CGM Drivers for Popular Graphics Packages. This table lists the graphics packages to which you can export CGMs and the appropriate drivers to use.
The driver names that are marked with an asterisk (*) are already provided with SAS 9.2. Some of the drivers have been disabled and are designated, in the table, by the phrase, disabled in dgdevice catalog. To enable a device driver, do the following:
Point the library GDEVICE0 to a new location. For example:
LIBNAME GDEVICE0 'directory';
Use PROC CATALOG to copy some or all of the entries to the GDEVICE0 location. For example:
PROC CATALOG C=SASHELP.DGDEVICE; COPY OUT=GDEVICE0.DEVICES; RUN;
Package | Suggested Driver |
---|---|
Aldus PageMaker | CGMAPMA* (disabled in dgdevice catalog) |
Aldus Persuasion | CGMAPSA* (disabled in dgdevice catalog) |
BPS 35 MM Express | CGM35 (disabled in dgdevice catalog) |
Borland Quattro Pro (Windows) | CGMBQWC (disabled in dgdevice catalog) |
Borland Quattro Pro (DOS) | CGMBQA* (disabled in dgdevice catalog) |
Frame Tech FrameMaker | CGMFRCA* (disabled in dgdevice catalog) CGMFRGA* (disabled in dgdevice catalog) CGMFRMA* (disabled in dgdevice catalog) |
Harvard Graphics 2.12 for DOS | CGHHG (disabled in dgdevice catalog) |
Harvard Graphics 3.0 for DOS | CGMHG3A* (disabled in dgdevice catalog) |
Harvard Graphics for Windows | CGMHGWA* (disabled in dgdevice catalog) |
ImageBuilder | CGMIMG (disabled in dgdevice catalog) |
Interleaf 5 | CGMCILFC* (disabled in dgdevice catalog) CGMGILFG* (disabled in dgdevice catalog) CGMMILFM* (disabled in dgdevice catalog) |
Lotus Ami Pro 3.0 | CGMAM3C* (disabled in dgdevice catalog) |
Lotus Freelance for DOS | CGMFLALJ* (disabled in dgdevice catalog) CGMFLAPL* (disabled in dgdevice catalog) CGMFLAPT* (disabled in dgdevice catalog) |
Lotus Freelance for Windows 2.0 | CGMFL2C* (disabled in dgdevice catalog) |
Lotus Freelance for Windows 1.0 | CGMFLWA* (disabled in dgdevice catalog) |
Lotus 1-2-3 4.0 | CGM123C* (disabled in dgdevice catalog) |
Lotus Office 97 | CGMLT97L CGMLT97P |
Microsoft Word for Windows 6.0 | CGMMW6C* (disabled in dgdevice catalog) |
Microsoft Word for Windows 2.0 | CGMMWWC* (disabled in dgdevice catalog) |
Microsoft PowerPoint | CGMMPPA (disabled in dgdevice catalog) |
Microsoft Office 97 | CGMOF97L or CGMOFML, CGMOF97P or CGMOFMP |
Polaroid CI3000 | CI3000 (disabled in dgdevice catalog) |
WordPerfect 5.1 for DOS | CGMWPCA (disabled in dgdevice catalog) CGMWPCAP* (disabled in dgdevice catalog) CGMWPGA (disabled in dgdevice catalog) CGMWPGAP* (disabled in dgdevice catalog) CGMWPMA (disabled in dgdevice catalog) CGMWPMAP* (disabled in dgdevice catalog) |
WordPerfect 5.2 for Windows | CGMWPWA* (disabled in dgdevice catalog) |
WordPerfect Presents for DOS | CGMWPCA* (disabled in dgdevice catalog) CGMWPGA* (disabled in dgdevice catalog) CGMWPMA* (disabled in dgdevice catalog) |
Zenographics Pixie | CGMPIX (disabled in dgdevice catalog) |
To learn how to export WMF files from SAS/GRAPH software, contact SAS Institute's Technical Support Division and ask for information for your target software application.
Additional Resources |
For full details about using SAS/GRAPH software, see SAS/GRAPH: Reference. For further details about using graphics and fonts with SAS under Windows, see Using TrueType Fonts with SAS/GRAPH Software.
Copyright © 2010 by SAS Institute Inc., Cary, NC, USA. All rights reserved.