Have you ever had one of those moments when something you had assumed was true all your life, turned out not to be true? I remember that happening in my high school Spanish class (taught by the wonderful Señor Shoaf), when he let us in on a little secret -
Search Results: Unicode (79)
You've probably heard of the famous Rosetta Stone. It had the same decree written on it in both ancient Egyptian and Greek, and was an essential key to help modern historians decipher and translate the ancient Egyptian hieroglyphs. To help the 'old timers' (like me) shift from using SAS/Graph to
The past few years, I've created maps showing things you might visit and do during the big SAS Global Forum (SASGF) conference. This year the conference is in Dallas, and ... you guessed it ... I've created a Dallas map! If you're familiar with my previous maps, you know that
You might have noticed I've been trying out SAS ODS Graphics lately, whereas in the past I mainly used SAS/Graph for my samples. In this blog post I step you through my latest fancy SGplot graph - hopefully you'll learn some tips & techniques, as you follow along. (I don't
They say "The Sun never sets on the SAS Empire" ... and it's true! There are SAS users all over the world, and SAS output & results could be in any language. Therefore, if you're a SAS programmer, you might need to know how to create SAS graphs with international
The ODS Graphics software, first released with SAS 9.2, supported creating graphs directly from statistical procedures. Prior to this, very few statistical procedures created graphs on their own, and in most cases creating graphs was a post process or creating the graphs from the saved data using SAS/GRAPH procedures. With
SAS Technical Support has had several requests from customers who want to use SAS® software to help download their files from a website when there is no application programming interface (API) to do it. This post shows how to automate downloads using PROC HTTP and DATA step, and how to use the HTTP DEBUG statement.
"We been through every kind of rain there is. Little bitty stingin' rain, and big ol' fat rain, rain that flew in sideways, and sometimes rain even seemed to come straight up from underneath." Was that a quote from the Forrest Gump movie, or something said regarding Hurricane Florence? Could be either one! Hurricane Florence recently came through
There are many quotes with words of wisdom to help you live your life. But sometimes one quote seems to contradict another. For example, "Don't sweat the small stuff." ... and "The devil is in the details." When it comes to creating graphs (and perhaps living my life in general),
As you might have guessed from some of my previous blog posts, I'm an avid paddler. I like to paddle boats, and I like to try to go fast! And when I'm considering buying a new boat, it's only natural that I would analyze the data to make an informed
You should play a little. Add dots. Add color. Your PROC REPORT output does not have to be boring. As a matter of fact, it can be both functional and appealing. Any Unicode value will do, but this blog shows how to use the Unicode value for a dot (filled
WARNING: This blog post references Avengers: Infinity War and contains story spoilers. But it also contains useful information about random number generators (RNGs) -- tempting! If you haven't yet seen the movie, you should make peace with this inner conflict before reading on. Throughout the movie, Thanos makes it clear
Are you going to Denver, Colorado, and wondering what fun/interesting/eclectic things you can do there? Then this is the map for you! For the past couple of years, I've made maps of the city SAS Global Forum is in, pointing out some of the attractions that conference attendees might want
This post provides examples of DRAW statement syntax and links to the documentation.
Usually, you use axis tables when there is a clear link between the rows of the axis table and the graph. I'll show how to use an axis table to create a table that is independent of the graph. This post also uses discrete attribute maps.
This post shows ways to display the upper or lower triangle of a correlation matrix. You can also use colors to show the magnitude of the correlations.
This post provides a general macro that enables you to easily display special characters (Unicode) in axis table columns.
This article shows how to simulate data from a mixture of multivariate normal distributions, which is also called a Gaussian mixture. You can use this simulation to generate clustered data. The adjacent graph shows three clusters, each simulated from a four-dimensional normal distribution. Each cluster has its own within-cluster covariance,
This post shows a variety of techniques including how to use PROC TEMPLATE and the SOURCE statement, PROC SGPLOT with multiple Y-axis tables, create comparable axes in two side-by-side graphs, create a broken axis, write and use a table template that wraps text, and find and display examples of certain statements in graph templates and fonts in style templates.
SG annotation is a powerful technique for adding text, lines, arrows, shapes, and images to graphs. This post provides a macro that can help you when you make a mistake in writing the annotations.
One key aspect of graphs used in the statistical or clinical research domains is the need to display numerical or textual information aligned with the data in the plot. Examples of such graphs are the Survival Plot or the Forest Plot. These graphs use the AXISTABLE statements available with SAS
As many of the regular readers of this blog know, SGPLOT and GTL, provide extensive tools to build complex graphs by layering plot statements together. These plots work with axes, legends and attribute maps to create graphs that can scale easily to different data. There are, however, many instances where
Technical Support regularly receives incoming calls from customers who have encountered the following transcoding warning: WARNING: Some character data was lost during transcoding in the data set xxx.xxx. Either the data contains characters that are not representable in the new encoding or truncation occurred during transcoding People are not always
If you give an artist some tools, they can create a pretty picture. Sure, they might have a preferred tool - but they can probably do a pretty decent job no matter what you give them (paint, colored pencils, watercolor, charcoal, etc). And creating pretty graphs in SAS is no
The NC Scholastic Chess Championship is coming up this weekend, and my buddy Michael Thomas asked if I might could create a few graphs to help analyze the event data. How could I pass up an opportunity like that?!?! Read along, and find out what graphs I created, and the
Today's post illustrates the REG, PBSPLINE, LOESS, SERIES, and SPLINE statements in PROC SGPLOT. The GROUP= and BREAK options in the SERIES statement are also discussed.
Doing business in a global economy, have you ever found yourself wanting to show Chinese (or Korean, or Japanese) labels on a map? If so, then this blog is for you! Before we get started, here is a photo of some Chinese characters to get you into the mood. This
Although statisticians often assume normally distributed errors, there are important processes for which the error distribution has a heavy tail. A well-known heavy-tailed distribution is the t distribution, but the t distribution is unsuitable for some applications because it does not have finite moments (means, variance,...) for small parameter values.
One of the strengths of the SGPLOT procedure in SAS is the ease with which you can overlay multiple plots on the same graph. For example, you can easily combine the SCATTER and SERIES statements to add a curve to a scatter plot. However, if you try to overlay incompatible
The advent of the AXISTABLE statement with SAS 9.4, has made it considerably easier to create graphs that include statistics aligned with x-axis values (Survival Plot) or with the y-axis (Forest Plot). This statement was specifically designed to address such needs, and includes the options needed to control the text attributes of