* builds the RGB color string from the color. * reads the red, green; and blue values for. * constructs an ANNOTATE dataset by

Size: px
Start display at page:

Download "* builds the RGB color string from the color. * reads the red, green; and blue values for. * constructs an ANNOTATE dataset by"

Transcription

1 IMPORTING X WINDOW SYSTEMTM RASTER IMAGES INTO SAS/GRAPHR SOFIWARE OUTPUT Bernadette Johnson Wendy D. Johnson Pharmaceutical Product Development, Inc. SAS Institute Inc. Introduction Under the UNIXR operating system, a workstation monitor bitmap image can be captured and stored as a binary file. Most X Window systems capture and replay images using the UNIX commands xwd and xwud, respectively. Many systems provide a library of images created from digitized photographs. These images, as well as user-generated images, can now be imported into SAS/GRAPH software to create powerful presentation graphs. This paper describes a macro used to import X Window raster images into SAS/GRAPH software and redisplay them using the Annotate facility. The %XWDTOSAS Macro After selecting or creating a raster image, the macro XWDTOSAS, is used to process the image. The macro %XWDTOSAS: * reads the image header information and determines the file header size, number of colors in the image, and image width and height * reads the red, green; and blue values for each color in tfie COlor map * builds the RGB color string from the color map values * constructs an ANNOTATE dataset by reading each image pixel value * produces a graph using PROC GANNO. The %XWDTOSAS macro program and output examples are located in the Appendix. Image file structure The binary image file contains a fixed header section, separate red, green, and blue color map information, and the pixel values. Reading the file header information The image files are read as an unformatted stream of bytes (RECFM = N) with each byte read as an IBM mainframe positive integer binary value (informat = S370FPIB).For example: data _null_; infile xwd recfm=n; input (headsize ncolors ". p_height byteline.. ) (S370FPIB4.) From the header, the file header size (headsize), number of colors (ncolors), image width (byteline) and image height (p height) are stored in macro variables to help-process the file. call symput(/headsize',compress(headsize»; Building the RGB Color String The color map has individual values for red, green, and blue. The number of colors is read from the file header and stored in the macro variable NCOLORS. The values are combined to form an RGB color specification string with the following format: "CX"llred(hex2 )llgreen(hex2 )llblue(hex2.). array rgb{o:ncolors} $8 coloro-color&ncolors; *read color map values and create custom colors for SAS/GRAPH software. do i=1 to ncolors; input pix S370fpib4. r 9 b xs s370fpib2.; rgb{pi x}= IICXII II put(r,$hex2.) II put(g,$hex2.) II put(b,$hex2.); 543

2 Creating the Annotate Dataset The annotate facility requires a special dataset where the observations correspond to graphic commands. The dataset produced by this macro contains a series of move and draw commands, color assignments, and the x and y coordinates needed to reproduce the original image. Refer to the SAS/GRAPH Software: Reference for further information on the annotate dataset structure. Each pixel value is a pointer or index into the color map. The number of bytes necessary to construct one line (P WIDTH) are read. The individual bytes are processed to determine the pixel color. A line segment is drawn until the color changes or until the end of the line is found. If the color changes, the current line is stopped, the color is reset, and a new segment begins. When the end of line is encountered, the pointer is reset to the beginning of the next line. do y=&height to 1 by ~1j * move the graph pointer to the left of the screen; stop; x~1; function='move' ; output anna; *read a image file tine; input (tine{*}) (s370fpib1.); *process while the x coordinate has not reached the end of the line; do while ( x <= &width); * if this is the first pixel of the line, reset last color to the current color; if (x=1) then last_elr = line{x}; *if the color changes or the end of the line is reached, fetch the color string, draw the previous line and output to annotate dataset; if (tine{x) NE last_elr) or (x~&w;dth) then do; color=rgb{last_clr}; function='draw'j output anna; * reset the last color holder to the current color value; last_clr=line{x}; end; *increment the x coordinate; x + 1; end; * do while x loopi end; *do while Y loop; Producing the SAS/GRAPH software output The GOPTIONS "gunit = cells vpos=&height hpos = &width" divides the vertical and horizontal plotting areas into cell positions equal to the width and height of the original image. The GANNO Procedure reads the annotate dataset and creates the graph. goptlons gunit=cells vpos=&height hpos=&width; proc ganno anno=anno; quit; Requirements In order to import raster images, you need: * the SAS System Version 6 (Base SAS software and SAS/GRAPB software) * an X Window System window raster image * an output device (terminal, printer, camera, etc.). Conclusion SAS/GRAPH output can be enhanced with imported raster images to produce more aesthetic graphs that capture your audience and focus their attention. Questions and/or comments may be directed to: Bernadette Johnson Pharmaceutical Product Development, Inc Meridith Drive Durham, NC Ph: (919) FAX: (919) Wendy Johnson SAS Institute Inc. SAS Campus Drive Cary, NC Ph: (919) FAX: (919) SASjGRAPH is a registered trademark of SAS Institute Inc. in the USA and other countries. R indicates USA registration. UNIX is a registered trademark of AT&T. The X Window System is a trademark of the Massachusetts Institute of Technology. The images used for this paper were obtained from unknown sources on various public domain billboards. Other brand and product names are registered trademarks or trademarks of their respective companies. 544

3 Appendix: The macro XYDTOSAS. To run the macro, call %xwdtosas(filename) where filename is the name of the xwd binary file. %macro xwdtosas(fname); /******************************************************/ /* */ /* NAME: xwd_to_sas */ /* TITLE: Convert XYD raster file to SAS/GRAPH output */ /* PROOUCT: Base SAS Software, SAS/GRAPH Software */ /* SYSTEM: SAS under UNIX, Version 6 */ /* DESC: This program takes a run-byte encoded raster */ /* file and reads the header information, reads and' */ /* stores the color map info, and creates an annotate*/ /* dataset that can be used with PROC GANNO to create*/ /* a SAS graph. The data set is structured so that */ /* move s are only done to decrement line positions. */ /* Else the draw is done for the line segment until *1 /* the color changes or end of the line is reached. */ /******************************************************/ * define the raster filename to fileref xwd; filename xwd li&fname"; * Read the raster file header to determine the width, height, number of colors and size of the header(in bytes). Store this info in macro variables. After the header is read, stop processing; data _null_; infile xwd recfm=n; input (headsize fi le_ver p_format p_depth p_width p_height xoffset byte_ord b_unit b_bi tord byad b_pixel by tel ine visclass r _mask g_mask b_mask bts_rgb cmap_ent ncolors w_width w_height (s370fpib4.) ( w_x w_y (s370fib4. ( w_bdrwdt (s370fpib4.) call symput('headsize',trim(left(headsize»); call symput( 'ncolors',trim( Left(ncol"ors-1»)i call symput('width' call symput('height',trim( left(bytel ine» );,trim(left(p_height»)i stop; ********************************************************,... data anno ( rep 1 ace=yes bufsize=8 keep=cotor x y xsys ysys zsys function size); retain size 16 xsys ysys zsys '4 function,, tast_elr -99; Length function $ 8; * read in image file; infile xwd recf~n ; *read in header information again. place in junk array NOT to be processed.; array junk {*} j1-j&headsize; input (j1-j&headsize) (s370fpib1.); *set up the array for the pixel values; array line {1:&width}; *set up the array format for the color map info; array rgb {O:&ncoLors} $ 8 coloro-color&ncolors; *the color map info has the map values in a stream form, with all the red, followed by all the blue, and all of the green so create temp arrays that; * will be joined later into array rgb array limits are set to 0 to 255 to correspond to the hex values 00 to FF; * construct the RGB color string and put into RGB array; * pix and xs are variables that are NOT used in macro. ; do i=o to &ncolors; input pix s370fpib4. r 9 b xs s370fpib2.; rgb{i}="cx" II p.jt(r,$hex2.) II put(g,$hex2.) II put(b,$hex2.); end; ********************************************; *process every line in the image file; doy=&height to 1 by '1; * move the graph pointer to the left of the screen; x=1; 545.

4 stop; function='move'i output anno; *read a image fi Ie 1 fne; input (line{*}) (s370fpib1.); *process while the x coordinate has not reached the end of the line; do while ( x <= &width); * if this is the first pixel of the line, reset last color to the current color; if (x=1) then last_clr = line{x}; *if the color changes or the end of the line is reached, fetch the color string, draw the previous line and output to annotate dataset; if (line{x) NE last_clr) or (x=&width) then do; color=rgb{last_clr}i function='draw'; output anna; * reset the last color holder to the current color value; last_clr=line{x}; end; *increment the x coordinatej x + 1; end; * do while x loop; end; *do while Y loop; *******************************************************; *set the graphics environment to the proper proportions to represent the graph; goptions gunit=cells vpos=&height hpos=&width nopromptj * use PRoe GANNO to display the graph; proc ganna anno=anno; quit; 'YdIlendj * end of macro; *******************************************************; 546

5 U,S, Dollars in Circulation In Millions of Dollars Totaiin Circulation $4,000. r , 01.j>. -.J $3,000 $2, $1,OC~J f'.. i '10""0 ""J 1960 ' YEf\R Source:The World Almanac 1988

6 548

The GTESTIT Procedure

The GTESTIT Procedure 967 CHAPTER 28 The GTESTIT Procedure Overview 967 About the Pictures 968 About the LOG 971 Procedure Syntax 972 PROC GTESTIT Statement 972 Examples 973 Example 1: Testing a GOPTIONS Statement 973 Overview

More information

Displaying Multiple Graphs to Quickly Assess Patient Data Trends

Displaying Multiple Graphs to Quickly Assess Patient Data Trends Paper AD11 Displaying Multiple Graphs to Quickly Assess Patient Data Trends Hui Ping Chen and Eugene Johnson, Eli Lilly and Company, Indianapolis, IN ABSTRACT Populating multiple graphs, up to 15, on a

More information

Multiple Forest Plots and the SAS System

Multiple Forest Plots and the SAS System Multiple Forest Plots and the SAS System Poster 10 Anne Barfield, Quanticate, Manchester, United Kingdom ABSTRACT This paper is the accompanying paper to the poster entitled Multiple Forest Plots and the

More information

The GSLIDE Procedure. Overview. About Text Slides CHAPTER 27

The GSLIDE Procedure. Overview. About Text Slides CHAPTER 27 959 CHAPTER 27 The GSLIDE Procedure Overview 959 About Text Slides 959 About Annotate Output 960 Procedure Syntax 960 PROC GSLIDE Statement 961 Examples 963 Example 1: Producing Text Slides 963 Example

More information

Effective Forecast Visualization With SAS/GRAPH Samuel T. Croker, Lexington, SC

Effective Forecast Visualization With SAS/GRAPH Samuel T. Croker, Lexington, SC DP01 Effective Forecast Visualization With SAS/GRAPH Samuel T. Croker, Lexington, SC ABSTRACT A statistical forecast is useless without sharp, attractive and informative graphics to present it. It is really

More information

The GANNO Procedure. Overview CHAPTER 12

The GANNO Procedure. Overview CHAPTER 12 503 CHAPTER 12 The GANNO Procedure Overview 503 Procedure Syntax 504 PROC GANNO Statement 504 Examples 507 Example 1: Scaling Data-Dependent Output 507 Example 2: Storing Annotate Graphics 509 Example

More information

INTRODUCTION TO THE SAS ANNOTATE FACILITY

INTRODUCTION TO THE SAS ANNOTATE FACILITY Improving Your Graphics Using SAS/GRAPH Annotate Facility David J. Pasta, Ovation Research Group, San Francisco, CA David Mink, Ovation Research Group, San Francisco, CA ABSTRACT Have you ever created

More information

Chapter 7 File Access. Chapter Table of Contents

Chapter 7 File Access. Chapter Table of Contents Chapter 7 File Access Chapter Table of Contents OVERVIEW...105 REFERRING TO AN EXTERNAL FILE...105 TypesofExternalFiles...106 READING FROM AN EXTERNAL FILE...107 UsingtheINFILEStatement...107 UsingtheINPUTStatement...108

More information

Data Annotations in Clinical Trial Graphs Sudhir Singh, i3 Statprobe, Cary, NC

Data Annotations in Clinical Trial Graphs Sudhir Singh, i3 Statprobe, Cary, NC PharmaSUG2010 - Paper TT16 Data Annotations in Clinical Trial Graphs Sudhir Singh, i3 Statprobe, Cary, NC ABSTRACT Graphical representation of clinical data is used for concise visual presentations of

More information

Presentation Quality Graphics with SAS/GRAPH

Presentation Quality Graphics with SAS/GRAPH Presentation Quality Graphics with SAS/GRAPH Keith Cranford, Marquee Associates, LLC Abstract The SASI GRAP~ Annotate Facilily along with hardware fonts can be used to produce presentation qualily graphics

More information

Making Presentations More Fun with DATA Step Graphics Interface (DSGI) Hui-Ping Chen, Eli Lilly and Company, Indianapolis, Indiana

Making Presentations More Fun with DATA Step Graphics Interface (DSGI) Hui-Ping Chen, Eli Lilly and Company, Indianapolis, Indiana Paper CC03 Making Presentations More Fun with DATA Step Graphics Interface (DSGI) Hui-Ping Chen, Eli Lilly and Company, Indianapolis, Indiana ABSTRACT Microsoft PowerPoint is powerful and most popular

More information

It s Not All Relative: SAS/Graph Annotate Coordinate Systems

It s Not All Relative: SAS/Graph Annotate Coordinate Systems Paper TU05 It s Not All Relative: SAS/Graph Annotate Coordinate Systems Rick Edwards, PPD Inc, Wilmington, NC ABSTRACT This paper discusses the SAS/Graph Annotation coordinate systems and how a combination

More information

Informats. Informats Under UNIX. HEXw. informat. $HEXw. informat. Details CHAPTER 13

Informats. Informats Under UNIX. HEXw. informat. $HEXw. informat. Details CHAPTER 13 207 CHAPTER 13 Informats Informats Under UNIX 207 Informats Under UNIX This chapter describes SAS informats that have behavior or syntax this is specific to UNIX environments. Each informat description

More information

PharmaSUG Paper TT10 Creating a Customized Graph for Adverse Event Incidence and Duration Sanjiv Ramalingam, Octagon Research Solutions Inc.

PharmaSUG Paper TT10 Creating a Customized Graph for Adverse Event Incidence and Duration Sanjiv Ramalingam, Octagon Research Solutions Inc. Abstract PharmaSUG 2011 - Paper TT10 Creating a Customized Graph for Adverse Event Incidence and Duration Sanjiv Ramalingam, Octagon Research Solutions Inc. Adverse event (AE) analysis is a critical part

More information

Creating Forest Plots Using SAS/GRAPH and the Annotate Facility

Creating Forest Plots Using SAS/GRAPH and the Annotate Facility PharmaSUG2011 Paper TT12 Creating Forest Plots Using SAS/GRAPH and the Annotate Facility Amanda Tweed, Millennium: The Takeda Oncology Company, Cambridge, MA ABSTRACT Forest plots have become common in

More information

A SAS Macro to Generate Caterpillar Plots. Guochen Song, i3 Statprobe, Cary, NC

A SAS Macro to Generate Caterpillar Plots. Guochen Song, i3 Statprobe, Cary, NC PharmaSUG2010 - Paper CC21 A SAS Macro to Generate Caterpillar Plots Guochen Song, i3 Statprobe, Cary, NC ABSTRACT Caterpillar plots are widely used in meta-analysis and it only requires a click in software

More information

Formats. Formats Under UNIX. HEXw. format. $HEXw. format. Details CHAPTER 11

Formats. Formats Under UNIX. HEXw. format. $HEXw. format. Details CHAPTER 11 193 CHAPTER 11 Formats Formats Under UNIX 193 Formats Under UNIX This chapter describes SAS formats that have behavior or syntax that is specific to UNIX environments. Each format description includes

More information

PharmaSUG 2012 Paper CC13

PharmaSUG 2012 Paper CC13 PharmaSUG 2012 Paper CC13 Techniques for Improvising the Standard Error Bar Graph and Axis Values Completely Through SAS Annotation Sunil Kumar Ganeshna, PharmaNet/i3, Pune, India Venkateswara Rao, PharmaNet/i3,

More information

Chapter 27 Saving and Printing Graphics

Chapter 27 Saving and Printing Graphics Chapter 27 Saving and Printing Graphics Chapter Table of Contents CHOOSING FONTS...404 SETTING DISPLAY OPTIONS...406 SAVING GRAPHICS...407 SavingGraphicsCatalogs...407 SavingGraphicsFiles...408 PRINTING...410

More information

Using SAS/GRAPH Software to Analyze Student Study Habits. Bill Wallace Computing Services University of Saskatchewan

Using SAS/GRAPH Software to Analyze Student Study Habits. Bill Wallace Computing Services University of Saskatchewan Using SAS/GRAPH Software to Analyze Student Study Habits Bill Wallace Computing Services University of Saskatchewan Abstract This paper describes the steps taken to create unusual vertical bar charts for

More information

Data Driven Annotations: An Introduction to SAS/GRAPH s Annotate Facility

Data Driven Annotations: An Introduction to SAS/GRAPH s Annotate Facility Paper HW03 Data Driven Annotations: An Introduction to SAS/GRAPH s Annotate Facility Arthur L. Carpenter California Occidental Consultants ABSTRACT When SAS/GRAPH was first introduced, it was the only

More information

The GIMPORT Procedure

The GIMPORT Procedure 705 CHAPTER 17 The GIMPORT Procedure Overview 705 Concepts 706 About Importing Graphics 706 Specifying a Fileref 706 Importing the File 706 CGM Elements Not Supported 707 About Color Mapping 707 About

More information

... WHERE. AnnotaI8 Data.S... XSYS & YSYS. Harie Annotate: How Not to Lose Your Head When Enhancing BAS/GRAPH output

... WHERE. AnnotaI8 Data.S... XSYS & YSYS. Harie Annotate: How Not to Lose Your Head When Enhancing BAS/GRAPH output Harie Annotate: How Not to Lose Your Head When Enhancing BAS/GRAPH output Arthur La Carpenter California occidental consultants KEY WORDS ANNOTATE, GRAPHICS, FRANCE, GSLIDE, GANNO, FUNCTION INTRODUCTION

More information

Move =(+0,+5): Making SAS/GRAPH Work For You

Move =(+0,+5): Making SAS/GRAPH Work For You Move =(+0,+5): Making SAS/GRAPH Work For You Deb Cassidy, Computer Horizons Corporation, ndianapolis, N 've often been asked "Can SAS/GRAPH do...?" SAS/GRAPH can do almost anything - if you are willing

More information

Create Flowcharts Using Annotate Facility. Priya Saradha & Gurubaran Veeravel

Create Flowcharts Using Annotate Facility. Priya Saradha & Gurubaran Veeravel Create Flowcharts Using Annotate Facility Priya Saradha & Gurubaran Veeravel Abstract With mounting significance to the graphical presentation of data in different forms in the pharmaceutical industry,

More information

SAS/ASSIST Software Setup

SAS/ASSIST Software Setup 173 APPENDIX 3 SAS/ASSIST Software Setup Appendix Overview 173 Setting Up Graphics Devices 173 Setting Up Remote Connect Configurations 175 Adding a SAS/ASSIST Button to Your Toolbox 176 Setting Up HTML

More information

Customized Flowcharts Using SAS Annotation Abhinav Srivastva, PaxVax Inc., Redwood City, CA

Customized Flowcharts Using SAS Annotation Abhinav Srivastva, PaxVax Inc., Redwood City, CA ABSTRACT Customized Flowcharts Using SAS Annotation Abhinav Srivastva, PaxVax Inc., Redwood City, CA Data visualization is becoming a trend in all sectors where critical business decisions or assessments

More information

The TRANTAB Procedure

The TRANTAB Procedure 1291 CHAPTER 40 The TRANTAB Procedure Overview 1291 Concepts 1292 Understanding Translation Tables and Character Sets 1292 Storing Translation Tables 1292 Modifying Institute-supplied Translation Tables

More information

SAS/GRAPH and ANNOTATE Facility More Than Just a Bunch of Labels and Lines

SAS/GRAPH and ANNOTATE Facility More Than Just a Bunch of Labels and Lines 2015 Paper AD-48 SAS/GRAPH and ANNOTATE Facility More Than Just a Bunch of Labels and Lines Mike Hunsucker, 14th Weather Squadron (USAF), Asheville, NC ABSTRACT SAS/GRAPH procedures enhanced with the ANNOTATE

More information

Taming the Box Plot. Sanjiv Ramalingam, Octagon Research Solutions, Inc., Wayne, PA

Taming the Box Plot. Sanjiv Ramalingam, Octagon Research Solutions, Inc., Wayne, PA Taming the Box Plot Sanjiv Ramalingam, Octagon Research Solutions, Inc., Wayne, PA ABSTRACT Box plots are used to portray the range, quartiles and outliers if any in the data. PROC BOXPLOT can be used

More information

Fly over, drill down, and explore

Fly over, drill down, and explore ABSTRACT Paper 79-2013 Fly over, drill down, and explore Suzanne Brown, HealthInsight New Mexico, Albuquerque, NM Data often have a spatial dimension, whether it is a five-year financial plan and annual

More information

SAS/GRAPH : Using the Annotate Facility

SAS/GRAPH : Using the Annotate Facility SAS/GRAPH : Using the Annotate Facility Jack S. Nyberg, ClinTrials Research, Inc., Lexington, KY. Stuart D. Nichols, ClinTrials Research, Inc., Lexington, KY. ABSTRACT The annotate facility in SAS/GRAPH

More information

Custom Map Displays Created with SAS/GRAPH Procedures and the Annotate Facility Debra Miller, National Park Service, Denver, CO

Custom Map Displays Created with SAS/GRAPH Procedures and the Annotate Facility Debra Miller, National Park Service, Denver, CO Paper 134-28 Custom Map Displays Created with SAS/GRAPH Procedures and the Annotate Facility Debra Miller, National Park Service, Denver, CO ABSTRACT The Annotate facility is a flexible system that you

More information

Converting Annotate to ODS Graphics. Is It Possible?

Converting Annotate to ODS Graphics. Is It Possible? ABSTRACT Paper 2686-2015 Converting Annotate to ODS Graphics. Is It Possible? Philip R Holland, Holland Numerics Limited In the previous chapter I described how many standard SAS/GRAPH plots can be converted

More information

PharmaSUG 2013 CC26 Automating the Labeling of X- Axis Sanjiv Ramalingam, Vertex Pharmaceuticals, Inc., Cambridge, MA

PharmaSUG 2013 CC26 Automating the Labeling of X- Axis Sanjiv Ramalingam, Vertex Pharmaceuticals, Inc., Cambridge, MA PharmaSUG 2013 CC26 Automating the Labeling of X- Axis Sanjiv Ramalingam, Vertex Pharmaceuticals, Inc., Cambridge, MA ABSTRACT Labeling of the X-axis usually involves a tedious axis statement specifying

More information

A Juxtaposition of Tables and Graphs Using SAS /GRAPH Procedures

A Juxtaposition of Tables and Graphs Using SAS /GRAPH Procedures A Juxtaposition of Tables and Graphs Using SAS /GRAPH Procedures Suhas R. Sanjee, MaxisIT Inc., Edison, NJ Sheng Zhang, Merck and Co., Upper Gwynedd, PA ABSTRACT Graphs provide high-impact visuals that

More information

ABC Macro and Performance Chart with Benchmarks Annotation

ABC Macro and Performance Chart with Benchmarks Annotation Paper CC09 ABC Macro and Performance Chart with Benchmarks Annotation Jing Li, AQAF, Birmingham, AL ABSTRACT The achievable benchmark of care (ABC TM ) approach identifies the performance of the top 10%

More information

APPENDIX 4 Migrating from QMF to SAS/ ASSIST Software. Each of these steps can be executed independently.

APPENDIX 4 Migrating from QMF to SAS/ ASSIST Software. Each of these steps can be executed independently. 255 APPENDIX 4 Migrating from QMF to SAS/ ASSIST Software Introduction 255 Generating a QMF Export Procedure 255 Exporting Queries from QMF 257 Importing QMF Queries into Query and Reporting 257 Alternate

More information

Using Unnamed and Named Pipes

Using Unnamed and Named Pipes 227 CHAPTER 12 Using Unnamed and Named Pipes Overview of Pipes 227 Using Unnamed Pipes 228 Unnamed Pipe Syntax 228 Using Redirection Sequences 229 Unnamed Pipe Example 229 Using Named Pipes 230 Named Pipe

More information

Figure 1. Paper Ring Charts. David Corliss, Marketing Associates, Bloomfield Hills, MI

Figure 1. Paper Ring Charts. David Corliss, Marketing Associates, Bloomfield Hills, MI Paper 16828 Ring Charts David Corliss, Marketing Associates, Bloomfield Hills, MI Abstract Ring Charts are presented as a new, graphical technique for analyzing complex relationships between tables in

More information

Chapter 25 PROC PARETO Statement. Chapter Table of Contents. OVERVIEW SYNTAX SummaryofOptions DictionaryofOptions...

Chapter 25 PROC PARETO Statement. Chapter Table of Contents. OVERVIEW SYNTAX SummaryofOptions DictionaryofOptions... Chapter 25 PROC PARETO Statement Chapter Table of Contents OVERVIEW...793 SYNTAX...794 SummaryofOptions...794 DictionaryofOptions...795 791 Part 7. The CAPABILITY Procedure SAS OnlineDoc : Version 8 792

More information

THE IMPACT OF DATA VISUALIZATION IN A STUDY OF CHRONIC DISEASE

THE IMPACT OF DATA VISUALIZATION IN A STUDY OF CHRONIC DISEASE THE IMPACT OF DATA VISUALIZATION IN A STUDY OF CHRONIC DISEASE South Central SAS Users Group SAS Educational Forum 2007 Austin, TX Gabe Cano, Altarum Institute Brad Smith, Altarum Institute Paul Cuddihy,

More information

Annotate Dictionary CHAPTER 11

Annotate Dictionary CHAPTER 11 427 CHAPTER 11 Annotate Dictionary Overview 428 Annotate Functions 429 BAR Function 431 CNTL2TXT Function 432 COMMENT Function 434 DEBUG Function 435 DRAW Function 435 DRAW2TXT Function 436 FRAME Function

More information

Multiple Graphical and Tabular Reports on One Page, Multiple Ways to Do It Niraj J Pandya, CT, USA

Multiple Graphical and Tabular Reports on One Page, Multiple Ways to Do It Niraj J Pandya, CT, USA Paper TT11 Multiple Graphical and Tabular Reports on One Page, Multiple Ways to Do It Niraj J Pandya, CT, USA ABSTRACT Creating different kind of reports for the presentation of same data sounds a normal

More information

Paper S Data Presentation 101: An Analyst s Perspective

Paper S Data Presentation 101: An Analyst s Perspective Paper S1-12-2013 Data Presentation 101: An Analyst s Perspective Deanna Chyn, University of Michigan, Ann Arbor, MI Anca Tilea, University of Michigan, Ann Arbor, MI ABSTRACT You are done with the tedious

More information

LST in Comparison Sanket Kale, Parexel International Inc., Durham, NC Sajin Johnny, Parexel International Inc., Durham, NC

LST in Comparison Sanket Kale, Parexel International Inc., Durham, NC Sajin Johnny, Parexel International Inc., Durham, NC ABSTRACT PharmaSUG 2013 - Paper PO01 LST in Comparison Sanket Kale, Parexel International Inc., Durham, NC Sajin Johnny, Parexel International Inc., Durham, NC The need for producing error free programming

More information

The correct bibliographic citation for this manual is as follows: SAS Institute Inc Proc EXPLODE. Cary, NC: SAS Institute Inc.

The correct bibliographic citation for this manual is as follows: SAS Institute Inc Proc EXPLODE. Cary, NC: SAS Institute Inc. Proc EXPLODE The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2004. Proc EXPLODE. Cary, NC: SAS Institute Inc. Proc EXPLODE Copyright 2004, SAS Institute Inc., Cary,

More information

Creating and Executing Stored Compiled DATA Step Programs

Creating and Executing Stored Compiled DATA Step Programs 465 CHAPTER 30 Creating and Executing Stored Compiled DATA Step Programs Definition 465 Uses for Stored Compiled DATA Step Programs 465 Restrictions and Requirements 466 How SAS Processes Stored Compiled

More information

Creating Complex Graphics for Survival Analyses with the SAS System

Creating Complex Graphics for Survival Analyses with the SAS System Creating Complex Graphics for Survival Analyses with the SAS System Steven E. Elkin, MBH Consulting, Inc., New York, NY William Mietlowski, Novartis Pharmaceuticals Corp., East Hanover, NJ Kevin McCague,

More information

Tasks Menu Reference. Introduction. Data Management APPENDIX 1

Tasks Menu Reference. Introduction. Data Management APPENDIX 1 229 APPENDIX 1 Tasks Menu Reference Introduction 229 Data Management 229 Report Writing 231 High Resolution Graphics 232 Low Resolution Graphics 233 Data Analysis 233 Planning Tools 235 EIS 236 Remote

More information

Usinq the VBAR and BBAR statements and the TEMPLATE Facility to Create side-by-side, Horizontal Bar Charts with Shared Vertical Axes Labels

Usinq the VBAR and BBAR statements and the TEMPLATE Facility to Create side-by-side, Horizontal Bar Charts with Shared Vertical Axes Labels Usinq the VBAR and BBAR statements and the TEMPLATE Facility to Create side-by-side, Horizontal Bar Charts with Shared Vertical Axes Labels Lela M. Brown, University of Oklahoma ABSTRACT PRoe GREPLAY's

More information

Coders' Corner. Paper ABSTRACT GLOBAL STATEMENTS INTRODUCTION

Coders' Corner. Paper ABSTRACT GLOBAL STATEMENTS INTRODUCTION Paper 70-26 Data Visualization of Outliers from a Health Research Perspective Using SAS/GRAPH and the Annotate Facility Nadia Redmond Kaiser Permanente Center for Health Research, Portland, Oregon ABSTRACT

More information

A Plot & a Table per Page Times Hundreds in a Single PDF file

A Plot & a Table per Page Times Hundreds in a Single PDF file A Plot & a Table per Page Times Hundreds in a Single PDF file Daniel Leprince DIEM Computing Services, Inc. Elizabeth Li DIEM Computing Services, Inc. SAS is a registered trademark or trademark of SAS

More information

Top Award and First Place Best Presentation of Data Lan Tran-La. Scios Nova, Inc. BLOOD PRESSURE AND HEART RATE vs TIME

Top Award and First Place Best Presentation of Data Lan Tran-La. Scios Nova, Inc. BLOOD PRESSURE AND HEART RATE vs TIME Top Award and First Place Best Presentation of Data Lan Tran-La Scios Nova, Inc. BLOOD PRESSURE AND HEART RATE vs TIME Vital signs were collected before, during, and after the infusion of Drug A. At the

More information

What Is a Communications Access Method? CHAPTER 1 Using Communications Access Methods

What Is a Communications Access Method? CHAPTER 1 Using Communications Access Methods 3 CHAPTER 1 Using Communications Access Methods What Is a Communications Access Method? 3 Types of Communications Access Methods 4 Program-to-Program Communications 4 Terminal-Based Communications 5 Making

More information

ODS LAYOUT is Like an Onion

ODS LAYOUT is Like an Onion Paper DP03_05 ODS LAYOUT is Like an Onion Rich Mays, University of Rochester Medical Center, Rochester, NY Abstract ODS LAYOUT is like an onion. They both make you cry? No! They both have layers! In version

More information

Batch Importing. Overview CHAPTER 4

Batch Importing. Overview CHAPTER 4 45 CHAPTER 4 Batch Importing Overview 45 Implementation 46 Specifying the Input Parameters 46 The IMP_TYPE Macro Variable 46 INFILE Macro Variable or Required Filerefs 47 NIDVARS and IDVARn Macro Variables

More information

EXPORTING SAS OUTPUT ONTO THE WORLD WIDE WEB

EXPORTING SAS OUTPUT ONTO THE WORLD WIDE WEB EXPORTING SAS OUTPUT ONTO THE WORLD WIDE WEB Shi-Tao Yeh, EDP Contract Services Andrew C. Yeh, Relyt Technologies Inc. ABSTRACT This paper presents a step by step demostration of exporting SAS list and

More information

Choosing the Right Procedure

Choosing the Right Procedure 3 CHAPTER 1 Choosing the Right Procedure Functional Categories of Base SAS Procedures 3 Report Writing 3 Statistics 3 Utilities 4 Report-Writing Procedures 4 Statistical Procedures 5 Efficiency Issues

More information

from the source host, use the FTP put command to copy a file from the source host to the target host.

from the source host, use the FTP put command to copy a file from the source host to the target host. 31 CHAPTER 4 Transferring a Transport File or a CEDA File File Transfer 31 Transport File Attributes 31 Using the FILENAME Statement or the FTP Utility to Specify File Attributes 32 Using the FILENAME

More information

Using Dynamic Data Exchange

Using Dynamic Data Exchange 145 CHAPTER 8 Using Dynamic Data Exchange Overview of Dynamic Data Exchange 145 DDE Syntax within SAS 145 Referencing the DDE External File 146 Determining the DDE Triplet 146 Controlling Another Application

More information

Introduction. Getting Started with the Macro Facility CHAPTER 1

Introduction. Getting Started with the Macro Facility CHAPTER 1 1 CHAPTER 1 Introduction Getting Started with the Macro Facility 1 Replacing Text Strings Using Macro Variables 2 Generating SAS Code Using Macros 3 Inserting Comments in Macros 4 Macro Definition Containing

More information

DATA Step Debugger APPENDIX 3

DATA Step Debugger APPENDIX 3 1193 APPENDIX 3 DATA Step Debugger Introduction 1194 Definition: What is Debugging? 1194 Definition: The DATA Step Debugger 1194 Basic Usage 1195 How a Debugger Session Works 1195 Using the Windows 1195

More information

Arthur L. Carpenter California Occidental Consultants

Arthur L. Carpenter California Occidental Consultants Paper HOW-004 SAS/GRAPH Elements You Should Know Even If You Don t Use SAS/GRAPH Arthur L. Carpenter California Occidental Consultants ABSTRACT We no longer live or work in a line printer - green bar paper

More information

Pete Lund Looking Glass Analytics, Olympia, WA

Pete Lund Looking Glass Analytics, Olympia, WA Paper 3496-2015 Something Old, Something New... Flexible Reporting with DATA Step-based Tools Pete Lund Looking Glass Analytics, Olympia, WA Abstract The report looks simple enough a bar chart and a table,

More information

Using ANNOTATE MACROS as Shortcuts

Using ANNOTATE MACROS as Shortcuts Using ANNOTATE MACROS as Shortcuts Arthur L. Carpenter California Occidental Consultants Abstract ANNOTATE macros can provide a shortcut when creating an ANNOTATE data set using assignment statements.

More information

The SERVER Procedure. Introduction. Syntax CHAPTER 8

The SERVER Procedure. Introduction. Syntax CHAPTER 8 95 CHAPTER 8 The SERVER Procedure Introduction 95 Syntax 95 Syntax Descriptions 96 Examples 101 ALLOCATE SASFILE Command 101 Syntax 101 Introduction You invoke the SERVER procedure to start a SAS/SHARE

More information

Text Generational Data Sets (Text GDS)

Text Generational Data Sets (Text GDS) Paper 274-2017 Text Generational Data Sets (Text GDS) Dr. Kannan Deivasigamani HSBC ABSTRACT This paper offers a way to fill the void that SAS currently has with respect to the missing feature in the language,

More information

Tips for Producing Customized Graphs with SAS/GRAPH Software. Perry Watts, Fox Chase Cancer Center, Philadelphia, PA

Tips for Producing Customized Graphs with SAS/GRAPH Software. Perry Watts, Fox Chase Cancer Center, Philadelphia, PA Tips for Producing Customized Graphs with SAS/GRAPH Software Perry Watts, Fox Chase Cancer Center, Philadelphia, PA Abstract * SAS software is used to produce customized graphics displays by solving a

More information

Innovative Graph for Comparing Central Tendencies and Spread at a Glance

Innovative Graph for Comparing Central Tendencies and Spread at a Glance Paper 140-28 Innovative Graph for Comparing Central Tendencies and Spread at a Glance Varsha C. Shah, CSCC, Dept. of Biostatistics, UNC-CH, Chapel Hill, NC Ravi M. Mathew, CSCC,Dept. of Biostatistics,

More information

Using Cross-Environment Data Access (CEDA)

Using Cross-Environment Data Access (CEDA) 93 CHAPTER 13 Using Cross-Environment Data Access (CEDA) Introduction 93 Benefits of CEDA 93 Considerations for Using CEDA 93 Alternatives to Using CEDA 94 Introduction The cross-environment data access

More information

Presented by: Steve First 2997 Yarmouth Greenway Drive, Madison, WI Phone: (608) Web:

Presented by: Steve First 2997 Yarmouth Greenway Drive, Madison, WI Phone: (608) Web: SAS and Sudoku Presented by: Steve First 2997 Yarmouth Greenway Drive, Madison, WI 53711 Phone: (608) 278-9964 Web: www.sys-seminar.com Systems Seminar Consultants, Inc 1 WISUG? Systems Seminar Consultants,

More information

Using Maps with the JSON LIBNAME Engine in SAS Andrew Gannon, The Financial Risk Group, Cary NC

Using Maps with the JSON LIBNAME Engine in SAS Andrew Gannon, The Financial Risk Group, Cary NC Paper 1734-2018 Using Maps with the JSON LIBNAME Engine in SAS Andrew Gannon, The Financial Risk Group, Cary NC ABSTRACT This paper serves as an introduction to reading JSON data via the JSON LIBNAME engine

More information

How to annotate graphics

How to annotate graphics Paper TU05 How to annotate graphics Sandrine STEPIEN, Quintiles, Strasbourg, France ABSTRACT Graphs can be annotated using different functions that add graphics elements to the output. Amongst other things,

More information

QUEST Procedure Reference

QUEST Procedure Reference 111 CHAPTER 9 QUEST Procedure Reference Introduction 111 QUEST Procedure Syntax 111 Description 112 PROC QUEST Statement Options 112 Procedure Statements 112 SYSTEM 2000 Statement 114 ECHO ON and ECHO

More information

APPENDIX 2 Customizing SAS/ASSIST Software

APPENDIX 2 Customizing SAS/ASSIST Software 241 APPENDIX 2 Customizing SAS/ASSIST Software Introduction 241 Setting User Profile Options 241 Creating an Alternate Menu Bar 243 Introduction This appendix describes how you can customize your SAS/ASSIST

More information

The EXPLODE Procedure

The EXPLODE Procedure 415 CHATER 17 The EXLODE rocedure Overview 415 rocedure Syntax 416 ROC EXLODE Statement 416 ARMCARDS or ARMCARDS4 Statement 416 Message Lines 416 Null Statement 418 Examples 419 Example 1: Controlling

More information

USING PROC GMAP AND DRILL-DOWN GRAPHICS FOR DATA QUALITY ASSURANCE Meghan Arbogast, Computer Sciences Corporation, Corvallis, OR

USING PROC GMAP AND DRILL-DOWN GRAPHICS FOR DATA QUALITY ASSURANCE Meghan Arbogast, Computer Sciences Corporation, Corvallis, OR USING PROC GMAP AND DRILL-DOWN GRAPHICS FOR DATA QUALITY ASSURANCE Meghan Arbogast, Computer Sciences Corporation, Corvallis, OR ABSTRACT Maps are particularly useful to review the distribution of biological

More information

A Stand-Alone SAS Annotate System for Figure Generation Brian Fairfield-Carter, PRA International, Victoria, BC

A Stand-Alone SAS Annotate System for Figure Generation Brian Fairfield-Carter, PRA International, Victoria, BC Paper 061-29 A Stand-Alone SAS Annotate System for Figure Generation Brian Fairfield-Carter, PRA International, Victoria, BC ABSTRACT Much of the work in developing output-generating tools involves striking

More information

USING SAS PROC GREPLAY WITH ANNOTATE DATA SETS FOR EFFECTIVE MULTI-PANEL GRAPHICS Walter T. Morgan, R. J. Reynolds Tobacco Company ABSTRACT

USING SAS PROC GREPLAY WITH ANNOTATE DATA SETS FOR EFFECTIVE MULTI-PANEL GRAPHICS Walter T. Morgan, R. J. Reynolds Tobacco Company ABSTRACT USING SAS PROC GREPLAY WITH ANNOTATE DATA SETS FOR EFFECTIVE MULTI-PANEL GRAPHICS Walter T. Morgan, R. J. Reynolds Tobacco Company ABSTRACT This presentation introduces SAS users to PROC GREPLAY and the

More information

Using Data Transfer Services

Using Data Transfer Services 103 CHAPTER 16 Using Data Transfer Services Introduction 103 Benefits of Data Transfer Services 103 Considerations for Using Data Transfer Services 104 Introduction For many applications, data transfer

More information

External Files. Definition CHAPTER 38

External Files. Definition CHAPTER 38 525 CHAPTER 38 External Files Definition 525 Referencing External Files Directly 526 Referencing External Files Indirectly 526 Referencing Many Files Efficiently 527 Referencing External Files with Other

More information

Photos with Text Reports on the Same SAS/AF Screen

Photos with Text Reports on the Same SAS/AF Screen Photos with Text Reports on the Same SAS/AF Screen Michael Shreve, American Honda Motor Company, Torrance, California Abstract The day of the digital media has arrived! Our field reps are armed with digital

More information

SAS Drug Development Program Portability

SAS Drug Development Program Portability PharmaSUG2011 Paper SAS-AD03 SAS Drug Development Program Portability Ben Bocchicchio, SAS Institute, Cary NC, US Nancy Cole, SAS Institute, Cary NC, US ABSTRACT A Roadmap showing how SAS code developed

More information

Posters 417. NESUG '92 Proceedings. usinq Annotate Data sets to Enhance Contour Graphics output. Shi Tao Yeh, Environmental Resources Kanaqement, ~nc.

Posters 417. NESUG '92 Proceedings. usinq Annotate Data sets to Enhance Contour Graphics output. Shi Tao Yeh, Environmental Resources Kanaqement, ~nc. Posters 417 usinq Annotate Data sets to Enhance Contour Graphics output Shi Tao Yeh, Environmental Resources Kanaqement, ~nc. I. Introduction The GCONTOUR procedure in the SAS/GRAPH produces contour plpts.

More information

A Format to Make the _TYPE_ Field of PROC MEANS Easier to Interpret Matt Pettis, Thomson West, Eagan, MN

A Format to Make the _TYPE_ Field of PROC MEANS Easier to Interpret Matt Pettis, Thomson West, Eagan, MN Paper 045-29 A Format to Make the _TYPE_ Field of PROC MEANS Easier to Interpret Matt Pettis, Thomson West, Eagan, MN ABSTRACT: PROC MEANS analyzes datasets according to the variables listed in its Class

More information

Have SAS Annotate your Blank CRF for you! Plus dynamically add color and style to your annotations. Steven Black, Agility-Clinical Inc.

Have SAS Annotate your Blank CRF for you! Plus dynamically add color and style to your annotations. Steven Black, Agility-Clinical Inc. PharmaSUG 2015 - Paper AD05 Have SAS Annotate your Blank CRF for you! Plus dynamically add color and style to your annotations. ABSTRACT Steven Black, Agility-Clinical Inc., Carlsbad, CA Creating the BlankCRF.pdf

More information

Colour and Number Representation. From Hex to Binary and Back. Colour and Number Representation. Colour and Number Representation

Colour and Number Representation. From Hex to Binary and Back. Colour and Number Representation. Colour and Number Representation Colour and Number Representation From Hex to Binary and Back summary: colour representation easy: replace each hexadecimal "digit" with the corresponding four binary digits using the conversion table examples:

More information

Automated Checking Of Multiple Files Kathyayini Tappeta, Percept Pharma Services, Bridgewater, NJ

Automated Checking Of Multiple Files Kathyayini Tappeta, Percept Pharma Services, Bridgewater, NJ PharmaSUG 2015 - Paper QT41 Automated Checking Of Multiple Files Kathyayini Tappeta, Percept Pharma Services, Bridgewater, NJ ABSTRACT Most often clinical trial data analysis has tight deadlines with very

More information

USING GOPTION STATEMENTS FOR PC/SAS GRAPHIC DEVICES. Randy Van Beek South Dakota State University Computing Center

USING GOPTION STATEMENTS FOR PC/SAS GRAPHIC DEVICES. Randy Van Beek South Dakota State University Computing Center USING GOPTION STATEMENTS FOR PC/SAS GRAPHIC DEVICES Randy Van Beek South Dakota State University Computing Center Making Transparencies on HP Colorpro Using GOPTION Statements For PC/SAS Graphic Devices

More information

SAS Simulation Studio 14.1: User s Guide. Introduction to SAS Simulation Studio

SAS Simulation Studio 14.1: User s Guide. Introduction to SAS Simulation Studio SAS Simulation Studio 14.1: User s Guide Introduction to SAS Simulation Studio This document is an individual chapter from SAS Simulation Studio 14.1: User s Guide. The correct bibliographic citation for

More information

Submitting SAS Code On The Side

Submitting SAS Code On The Side ABSTRACT PharmaSUG 2013 - Paper AD24-SAS Submitting SAS Code On The Side Rick Langston, SAS Institute Inc., Cary NC This paper explains the new DOSUBL function and how it can submit SAS code to run "on

More information

Gary L. Katsanis, Blue Cross and Blue Shield of the Rochester Area, Rochester, NY

Gary L. Katsanis, Blue Cross and Blue Shield of the Rochester Area, Rochester, NY Table Lookups in the SAS Data Step Gary L. Katsanis, Blue Cross and Blue Shield of the Rochester Area, Rochester, NY Introduction - What is a Table Lookup? You have a sales file with one observation for

More information

Tips to Customize SAS/GRAPH... for Reluctant Beginners et al. Claudine Lougee, Dualenic, LLC, Glen Allen, VA

Tips to Customize SAS/GRAPH... for Reluctant Beginners et al. Claudine Lougee, Dualenic, LLC, Glen Allen, VA Paper SIB-109 Tips to Customize SAS/GRAPH... for Reluctant Beginners et al. Claudine Lougee, Dualenic, LLC, Glen Allen, VA ABSTRACT SAS graphs do not have to be difficult or created by SAS/GRAPH experts.

More information

Correcting for natural time lag bias in non-participants in pre-post intervention evaluation studies

Correcting for natural time lag bias in non-participants in pre-post intervention evaluation studies Correcting for natural time lag bias in non-participants in pre-post intervention evaluation studies Gandhi R Bhattarai PhD, OptumInsight, Rocky Hill, CT ABSTRACT Measuring the change in outcomes between

More information

DEC HEX ACTION EXTRA DESCRIPTION

DEC HEX ACTION EXTRA DESCRIPTION PHRAGSOFT 128 X 64 PIXEL LCD DISPLAY DRIVER The display driver uses the equivalent of standard BBC Microcomputer VDU codes, however, because the display is monochrome, with a fixed resolution, there are

More information

A Dynamic Imagemap Generator Carol Martell, Highway Safety Research Center, Chapel Hill, NC

A Dynamic Imagemap Generator Carol Martell, Highway Safety Research Center, Chapel Hill, NC A Dynamic Imagemap Generator Carol Martell, Highway Safety Research Center, Chapel Hill, NC ABSTRACT We learned that our web developers were turning a picture of the state of North Carolina with its one

More information

Using Annotate Datasets to Enhance Charts of Data with Confidence Intervals: Data-Driven Graphical Presentation

Using Annotate Datasets to Enhance Charts of Data with Confidence Intervals: Data-Driven Graphical Presentation Using Annotate Datasets to Enhance Charts of Data with Confidence Intervals: Data-Driven Graphical Presentation Gwen D. Babcock, New York State Department of Health, Troy, NY ABSTRACT Data and accompanying

More information

Routing Output. Producing Output with SAS Software CHAPTER 6

Routing Output. Producing Output with SAS Software CHAPTER 6 125 CHAPTER 6 Routing Output Producing Output with SAS Software 125 The Default Routings for the SAS Log and Procedure Output 126 Changing the Default Routings 127 Using the Print Dialog Box 128 Printing

More information

Data Representation. Variable Precision and Storage Information. Numeric Variables in the Alpha Environment CHAPTER 9

Data Representation. Variable Precision and Storage Information. Numeric Variables in the Alpha Environment CHAPTER 9 199 CHAPTER 9 Data Representation Variable Precision and Storage Information 199 Numeric Variables in the Alpha Environment 199 Numeric Variables in the VAX Environment 200 Missing Values 201 Variable

More information