pdf reader in asp.net c# : How to copy text out of a pdf software application dll winforms azure web page web forms MWSUG-2010-510-part873

Paper 51-2010 
Using PROC SGPLOT for Quick High-Quality Graphs 
Susan J. Slaughter, Avocet Solutions, Davis, CA 
Lora D. Delwiche, University of California, Davis, CA 
ABSTRACT 
New with SAS
®
9.2, ODS Graphics introduces a whole new way of generating high-quality graphs using SAS. With 
just a few lines of code, you can add sophisticated graphs to the output of existing statistical procedures, or create 
stand-alone graphs. The SGPLOT procedure produces a variety of graphs including bar charts, scatter plots, and line 
graphs. This paper shows how to produce several types of graphs using PROC SGPLOT, and how to create paneled 
graphs by converting PROC SGPLOT to PROC SGPANEL. This paper also shows how to send your graphs to 
different ODS destinations, how to apply ODS styles to your graphs, and how to specify properties of graphs, such as 
format, name, height, and width. Last, this paper shows how to use the SAS/GRAPH® ODS Graphics Editor to make 
one-time changes to graphs..  
INTRODUCTION 
When ODS Graphics was originally conceived, the goal was to enable statistical procedures to produce sophisticated 
graphs tailored to each specific statistical analysis, and to integrate those graphs with the destinations and styles of 
the Output Delivery System. In SAS 9.2, over 60 statistical procedures have the ability to produce graphs using ODS 
Graphics
.
A fortuitous side effect of all this graphical power has been the creation of a set of procedures for creating 
stand-alone graphs (graphs that are not embedded in the output of a statistical procedure). These procedures all 
have names that start with the letters SG (SGPLOT, SGSCATTER, SGPANEL, and SGRENDER).  
This paper focuses on one of those procedures, the SGPLOT procedure. PROC SGPLOT produces many types of 
graphs. In fact, this one procedure produces 16 different types of graphs. PROC SGPLOT creates one or more 
graphs and overlays them on a single set of axes. (There are four axes in a set: left, right, top, and bottom.) Other SG 
procedures create panels with multiple sets of axes, or render graphs using custom ODS graph templates. Because 
the syntax for SGPLOT and SGPANEL are so similar, we also show an example of SGPANEL which produces a 
panel of graphs all using the same axis specifications. 
This paper was written using SAS 9.2 Phase 2, but almost all the features discussed here also work in SAS 9.2 
Phase1. For those features that are new with Phase 2, we note the differences in their descriptions.  
ODS GRAPHICS VS. TRADITIONAL SAS/GRAPH 
To use ODS Graphics you must have SAS/GRAPH software which is licensed separately from Base SAS. Some 
people may wonder whether ODS Graphics replaces traditional SAS/Graph procedures. No doubt, for some people 
and some applications, it will. But ODS Graphics is not designed to do everything that traditional SAS/Graph does, 
and does not replace it. For example, ODS Graphics does not create contour plots; for contour plots you need to use 
traditional SAS/GRAPH.  
Here are some of the major differences between ODS Graphics and traditional SAS/GRAPH procedures.  
Traditional SAS/GRAPH
ODS Graphics
• Graphs are saved in SAS 
graphics catalogs 
• Produces graphs in standard 
image file formats such as 
PNG and JPEG 
• Graphs are viewed in the Graph 
window 
• Graphs are viewed in standard 
viewers such as a web 
browser for HTML output 
• Can use GOPTIONS statements 
to control appearance of graphs 
• GOPTIONS statements have 
no effect 
How to copy text out of a pdf - delete, remove text from PDF file in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Allow C# developers to use mature APIs to delete and remove text content from PDF document
delete text from pdf online; delete text pdf files
How to copy text out of a pdf - VB.NET PDF delete text library: delete, remove text from PDF file in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
VB.NET Programming Guide to Delete Text from PDF File
remove text from pdf preview; remove text watermark from pdf online
VIEWING ODS GRAPHICS 
When you produce ODS Graphics in the SAS windowing environment, for most 
output destinations the Results Viewer window opens to display your results. 
However, when you use the LISTING destination, graphs are not automatically 
displayed. You can always view graphs, regardless of their destination, by double-
clicking their graph icons in the Results window. 
EXAMPLES 
The following examples show a small sample of the types of graphs the SGPLOT procedure can produce.  
HISTOGRAMS 
Histograms show the distribution of a continuous variable. The following PROC SGPLOT uses data from the 
preliminary heats of the 2008 Olympic Men’s Swimming Freestyle 100 m event. The histogram shows the distribution 
of the variable, TIME, which is the time in seconds for each swimmer. 
* Histograms; 
PROC SGPLOT DATA = Freestyle; 
HISTOGRAM Time; 
TITLE "Olympic Men's Swimming Freestyle 100"
RUN;  
VB.NET PDF- View PDF Online with VB.NET HTML5 PDF Viewer
NET PDF file & pages edit, C#.NET PDF pages extract, copy, paste, C#.NET rotate PDF pages, C#.NET search text in PDF Support to zoom in and zoom out PDF page.
remove text from pdf reader; how to delete text from pdf reader
VB.NET PDF replace text library: replace text in PDF content in vb
PDF reader component installed. Able to pull text out of selected PDF page or all PDF document in VB.NET. Support .NET WinForms, ASP
delete text from pdf with acrobat; delete text from pdf file
The next PROC SGPLOT uses a DENSITY statement to overlay a density plot on top of the histogram. The default 
density plot is the normal distribution. When overlaying plots, the order of the statements determines which plot is 
drawn on top. The plot resulting from the first statement will be on the bottom, followed by the second, and so on. 
Care must be taken to make sure that the subsequent plots do not obscure the first.  
PROC SGPLOT DATA = Freestyle; 
HISTOGRAM Time; 
DENSITY Time; 
TITLE "Olympic Men's Swimming Freestyle 100"
RUN;  
BAR CHARTS 
Bar charts show the distribution of a categorical variable. This code uses a VBAR statement to create a vertical bar 
chart of the variable REGION. The chart shows the number of countries in each region that participated in the 2008 
Olympics.  
* Bar Charts; 
PROC SGPLOT DATA = Countries; 
VBAR Region; 
TITLE 'Olympic Countries by Region'
RUN
C# HTML5 PDF Viewer SDK to view PDF document online in C#.NET
Image: Copy, Paste, Cut Image in Page. Link: Edit URL. Bookmark: Edit Support to zoom in and zoom out PDF page. Easy to search PDF text in whole PDF document.
pull text out of pdf; delete text pdf document
VB.NET PDF - View PDF with WPF PDF Viewer for VB.NET
Select. Select text and image to copy and paste using Ctrl+C and Ctrl+V. Rotation (Ⅲ) & Zoom (Ⅳ) Tabs. Click to zoom out current PDF document page. 5.
delete text pdf file; delete text pdf preview
This bar chart is like the first one except that the bars have been divided into groups using the GROUP= option. The 
grouping variable is a categorical variable named POPGROUP. The GROUP= option can be used with many 
SGPLOT statements (see Table 1). 
PROC SGPLOT DATA = Countries; 
VBAR Region / GROUP = PopGroup; 
TITLE 'Olympic Countries by Region and Population Group'
RUN
In the following code, the GROUP= option has been replaced with a RESPONSE= option. The response variable is 
NUMPARTICIPANTS, the number of participants in the 2008 Olympics from each country. Now each bar represents 
the total number of participants for a region.   
PROC SGPLOT DATA = Countries; 
VBAR Region / RESPONSE = NumParticipants; 
TITLE 'Olympic Participants by Region'
RUN
C# WPF PDF Viewer SDK to view PDF document in C#.NET
Select. Select text and image to copy and paste using Ctrl+C and Ctrl+V. Rotation (Ⅲ) & Zoom (Ⅳ) Tabs. Click to zoom out current PDF document page. 5.
erase text from pdf; how to erase text in pdf
C# PDF Text Extract Library: extract text content from PDF file in
Ability to extract highlighted text out of PDF document. it is feasible for users to extract text content from source PDF document file with a copy-and-paste
pdf editor delete text; how to delete text in pdf document
SERIES PLOTS 
In a series plot, the data points are connected by a line. This example uses the average monthly rainfall for three 
cities, Beijing, Vancouver, and London. Three SERIES statements overlay the three lines. Data for series plots must 
be sorted by the X variable. If your data are not already in the correct order, then use PROC SORT to sort the data 
before running the SGPLOT procedure. 
* Series plot; 
PROC SGPLOT DATA = Weather; 
SERIES X = Month Y = BRain; 
SERIES X = Month Y = VRain; 
SERIES X = Month Y = LRain; 
TITLE 'Average Monthly Rainfall in Olympic Cities'
RUN
EMBELLISHING GRAPHS 
So far the examples have shown how to create basic graphs. The remaining examples show statements and options 
you can use to change the appearance of your graphs. 
XAXIS AND YAXIS STATEMENTS 
In the preceding series plot, the variable on the X axis is Month. The values of Month are integers from 1 to 12, but 
the default labels on the X axis have values like 2.5. In the following code, the option TYPE = DISCRETE tells SAS to 
use the actual data values. Other options change the axis label and set values for the Y axis, and add grid lines.  
* Plot with XAXIS and YAXIS; 
PROC SGPLOT DATA = Weather; 
SERIES X = Month Y = BRain; 
SERIES X = Month Y = VRain; 
SERIES X = Month Y = LRain; 
XAXIS TYPE = DISCRETE GRID
YAXIS LABEL = 'Rain in Inches' GRID VALUES = (0 TO 10 BY 1); 
TITLE 'Average Monthly Rainfall in Olympic Cities'
RUN
C# PDF Image Redact Library: redact selected PDF images in C#.net
file & pages edit, C#.NET PDF pages extract, copy, paste, C#.NET rotate PDF pages, C#.NET search text in PDF NET control allows users to black out image in
how to delete text in pdf converter; how to erase pdf text
VB.NET PDF Text Extract Library: extract text content from PDF
Extract highlighted text out of PDF document. Image text extraction control provides text extraction from PDF images and image files.
how to delete text from pdf; how to delete text from a pdf in acrobat
PLOT STATEMENT OPTIONS 
Many options can be added to plot statements. For these SERIES statements, the options LEGENDLABEL=, 
MARKERS, AND LINEATTRS= have been added. The LEGENDLABEL= option can be used with any of the plot 
statements, while the MARKERS and LINEATTRS= options can only be used with certain plot statements (see  
Table 1). 
* Plot with options on plot statements; 
PROC SGPLOT DATA = Weather; 
SERIES X = Month Y = BRain / LEGENDLABEL = 'Beijing'  
MARKERS LINEATTRS = (THICKNESS = 2); 
SERIES X = Month Y = VRain / LEGENDLABEL = 'Vancouver'  
MARKERS LINEATTRS = (THICKNESS = 2); 
SERIES X = Month Y = LRain / LEGENDLABEL = 'London'  
MARKERS LINEATTRS = (THICKNESS = 2); 
XAXIS TYPE = DISCRETE
TITLE 'Average Monthly Rainfall in Olympic Cities'
RUN
REFLINE STATEMENT 
Reference lines can be added to any type of graph. In this case, lines have been added marking the average 
rainfall per month for the entire year for each city.  The TRANSPARENCY= option on the REFLINE statement 
specifies that the reference line should be 50% transparent. The TRANSPARENCY option can also be used with 
many other plot statements (see Table 1). 
* Plot with REFLINE; 
PROC SGPLOT DATA = Weather; 
SERIES X = Month = BRain; 
SERIES X = Month Y = VRain; 
SERIES X = Month = LRain; 
XAXIS TYPE = DISCRETE
REFLINE 2.03 4.78 1.94 / TRANSPARENCY = 0.5  
LABEL = ('Beijing(Mean)' 'Vancouver(Mean)' 'London(Mean)'); 
TITLE 'Average Monthly Rainfall in Olympic Cities'
RUN
INSET STATEMENT 
The INSET statement allows you to add descriptive text to graphs. Insets can be added to any type of graph.  
* Plot with INSET; 
PROC SGPLOT DATA = Weather; 
SERIES X = Month Y = BRain; 
SERIES X = Month Y = VRain; 
SERIES X = Month Y = LRain; 
XAXIS TYPE = DISCRETE
INSET 'Source Lonely Planet Guide'POSITION = TOPRIGHT BORDER
TITLE 'Average Monthly Rainfall in Olympic Cities'
RUN
SGPLOT PROCEDURE SYNTAX 
The four tables spread over the next five pages summarize the statements and options for the SGPLOT procedure.  
The SGPLOT procedure produces 16 different types of plots that can be grouped into five general areas: basic X Y 
plots, band plots, fit and confidence plots, distribution graphs for continuous DATA, and distribution graphs for 
categorical DATA. The VECTOR statement is new with SAS 9.2 Phase 2; all the others are available with SAS 9.2 
Phase 1. Many of these plot types can be used together in the same graph. In the preceding examples, we used the 
HISTOGRAM and DENSITY statements together to produce a histogram overlaid with a normal density curve. We 
also used three SERIES statements together to produce one graph with three different series lines. However, not all 
plot statements can be used with all other plot statements. Table 1 shows which statements can be used with which 
other statements. Table 1 also includes several options that can be used with many different plot statements. 
Table 2 shows each of the 16 plot statements along with their basic syntax and selected options. The options listed in 
Table 2 are in addition to the options listed in Table 1. 
In addition to the plot statements, there are some optional statements you might want to use. These statements can 
be used with any type of plot to control axes, or add reference lines and insets. Table 3 shows these statements with 
selected options.  
Several types of plots can use the LINEATTR, MARKERATTR, or FILLATTR options to change the appearance of 
lines, markers, or fill (see Table 1). These options allow you choose values for the color of fill; the color, pattern and 
thickness of lines; and color, symbol, and size of markers. Table 4 gives the syntax for hard coding the values for 
these options. Note that it is also possible to use ODS styles to control these attributes, or to change them using the 
ODS Graphics Editor. 
Even with all the options listed in these four tables, this is just a sample. Each plot statement has many possible 
options—we have listed only a few of the most useful. For a complete list of available options, see the SAS Help and 
Documentation for PROC SGPLOT. 
Table 1. Compatibility of SGPLOT procedure statements and selected options. If a check mark appears in the box 
then the two statements or options can be used together.  
SCATTER 
SERIES 
STEP 
NEEDLE 
VECTOR 
BAND 
REG 
LOESS 
PBSPLINE 
ELLIPSE 
HBOX/VBOX 
HISTOGRAM 
DENSITY 
HBAR/VBAR 
HLINE/VLINE 
DOT 
Basic X Y Plots 
PLOTNAME X=var Y=var / options; 
SCATTER 
9
9
9
9
9
9
9
SERIES 
9
9
9
9
9
9
9
STEP 
9
9
9
9
9
9
9
NEEDLE 
9
9
9
9
9
9
9
VECTOR 
9
9
9
9
9
9
9
Band Plots 
BAND X=var UPPER=var LOWER=var / options; (You can also specify numeric values for upper and lower.) 
BAND 
9
9
9
9
9
9
9
Fit and Confidence Plots 
PLOTNAME X=var Y=var / options; 
REG 
9
9
9
9
9
9
9
LOESS 
9
9
9
9
9
9
9
PBSPLINE 
9
9
9
9
9
9
9
ELLIPSE 
9
9
9
9
9
9
9
Distribution Graphs – Continuous DATA 
PLOTNAME response-var / options; 
HBOX or VBOX 
HISTOGRAM 
9
DENSITY 
9
Distribution Graphs – Categorical DATA 
PLOTNAME category-var / options; 
HBAR or VBAR 
9
9
HLINE or VLINE 
9
9
DOT 
9
9
Selected Options in Plot Statements 
GROUP 
/GROUP=var; 
TRANSPARENCY 
/TRANSPARENCY=value
MARKERS 
/MARKERS; 
NOMARKERS 
/NOMARKERS; 
LEGENDLABEL 
/LEGENDLABEL= 
’text-string’; 
FILLATTRS 
/FILLATTRS= 
(attribute=val); 
LINEATTRS 
/LINEATTRS= 
(attribute=val); 
MARKERATTRS 
/MARKERATTRS= 
(attribute=val); 
10 
Table 2.  SGPLOT plot statements and selected options. 
SYNTAX 
SELECTED OPTIONS 
SCATTER
SCATTER X=var Y=var/options; 
DATALABEL=var 
Displays a label for each DATA 
point 
SERIES 
SERIES X=var Y=var/options; 
BREAK 
Creates a break in the line for 
each missing value 
CURVELABEL  
Labels the series curve using the 
Y variable label 
STEP 
STEP X=var Y=var/options; 
BREAK 
Creates a break in the line for 
each missing value 
CURVELABEL  
Labels the step curve using the Y 
variable label 
NEEDLE 
NEEDLE X=var Y=var/options; 
BASELINE=val 
Specifies a numeric value on the Y 
axis for the baseline 
VECTOR 
VECTOR X=var Y=var/options; 
(Note: VECTOR is new with SAS 9.2. 
Phase 2.) 
XORIGIN=val 
Specifies X coordinate for origin, 
either numeric value or numeric 
variable. 
YORIGIN=val 
Specifies Y coordinate for origin, 
either numeric value or numeric 
variable. 
BAND 
BAND X=var UPPER=var  
LOWER=var/options; 
FILL 
Specifies if fill is visible or not 
NOFILL 
OUTLINE  
Specifies if outline is visible or not 
NOOUTLINE 
REG 
REG X=var Y=var/options; 
ALPHA=val 
Specifies confidence level  (default 
0.05) 
CLI 
Displays confidence limits for 
individual predicted values 
CLM 
Displays confidence limits for 
mean predicted values
LOESS 
LOESS X=var Y=var/options; 
ALPHA=val 
Specifies confidence level  (default 
0.05)  
CLM 
Displays confidence limits 
INTERPOLATION=  Specifies degree of interpolation: 
CUBIC (default) or LINEAR
Documents you may be interested
Documents you may be interested