Click here to see the SAS code.
Click here to see the example.

I started with data from examples on the iDashes website...
http://www.visualmining.com/developers/application-examples.shtml
And then tried to make a dashboard that was more functional
than theirs :)  I have changed the data somewhat so that my
chart does not get into copyright infringement...

I use greplay for the top part.
I create a custom greplay template with 5 boxes, and I replay
my 5 graphics into them.

The purple "Raise More Capital" is from 'proc gslide'.
Since "goptions cback" doesn't work with greplay, I have annotated
a purple rectangle/bar behind the gslide.

The top/middle graph is a simple gplot, using '$' as the marker.
I annotate the green and red areas in the plot frame - if the markers
are in the red area, then the cost to raise a dollar is too high
for that year.

The Gauge/CSF chart is custom-made.
Since there is no sas/graph proc for csf's (only the ds2csf macro)
there is no way to generate a csf as a grseg, and therefore no way 
to use it in greplay.  Therefore I create my own, using annotated
pie slices.

Since my schedule of fundraising events was kinda basic/simple,
and didn't have any dependencies, I chose to represent it with a 
clever bar chart rather than 'proc gantt' (also, you only need a
sas/graph license to do it with a bar chart, rather than needing
sas/or).  The 'clever' part is that each event is really 2 bar
segments -- an 'invisible' white one that extends from time=0
(ie, the dawn of sas time in 1960) and then the blue segment that
starts and stops at the begin and end time of the event.
The html charttips/flyover-text are particularly helpful here,
to see the dates of the event.

And the bottom/right chart is a simple grouped bar chart.

Then there's a table below the graphics - I created this with "proc report".
I use some options to sum certain columns, and color it certain ways.

I use the following to suppress the horizontal-rule line between the 
graphs and the proc report table...

proc template;
  define style styles.mystyle;
     parent=styles.statdoc;
        style body from body /
           pagebreakhtml=_undef_;
  end;
run;


Back to Samples Index