|
DESCRIPTIONA number of types of scaling units may be used when plotting data. They are described here.EXAMPLESA number of examples illustrating the various scale types may be veiwed from the Gallery Scaling and Axes page![]() ABSOLUTE UNITSAbsolute units are not used for plotting data but rather for defining plot areas and for purposes such as placing annotation, etc. Absolute space is measured in inches (or centimeters if set in the config file, proc settings, or using the -cm command line option). The origin (0,0) is always at the lower-left corner. A location is said to be in "absolute space" if its coordinates are expressed in inches (or cm) from the lower-left corner.DATA SCALING UNITSA number of scaling units are available. Scaling is set in proc areadef or in proc defineunits. A location is said to be in "scaled space" or "data space" if its coordinates are expressed in the scaled units that have been specified.
The following are the available types of scaling.
For each type a description is given. Each type also
has one or more display format specifications,
which determine how incremental stubs will be presented.
LinearStandard linear numeric scale. Numeric values may be any mixture of integer or floating point (exponential/scientific notation e.g. 4.336e11 is supported). Linear scaling is used for plotting continuous numeric data; it may also be used with series, such as bars when no location value is present in the data, or lineplots when no X value is present in the data.
Display format:
Display of numerics
is controlled using a
printf-spec
LogLogarithmic numeric scale. Numeric values may be any mixture of integer or floating point (exponential/scientific notation is supported). The log of 0.0 or of negative numbers is nonexistant; therefore log plots should have a minima > 0 (very small numbers such as 0.01 are OK). Also available is log+1 scaling, which is similar to log but uses log( value+1 ). This is useful for log-characteristic data that can include values at or near 0.0. If using log scaling along with autorange, and if values of 0.0 are found, log+1 scaling will automatically be used. Display format - same as linear, above.
The proc axis stubcull attribute may be useful in eliminating "stub pile-up"
when rendering log axes.
CategoriesPositioning using categorical bins rather than a continuous scale. The categories themselves are alphanumeric labels. This scaletype is often useful in positioning bars, rangebars, etc. Categories are defined using proc categories before invoking proc areadef (version 2.11 on), or from within proc areadef. Category names generally are short (less than 40 chars long); they may contain embedded whitespace but this may be problematic if a category name will be used as a plotvalue or locvalue.
Display format - the defined category names.
DateAllows date information to be plotted directly. A number of date notations (including year/month and quarter year notations) are supported for plotting and date arithmetic. It is possible to omit weekends if desired - see proc settings. Display format: Dates may be displayed in any of the supported date arithmetic formats, or in a number of additional display formats
The basic date unit is always a day, regardless
of which notation is in use. Stub and tic increments
may be expressed in months or years, if desired.
TimeAllows date information to be plotted directly. Several time notations are supported for plotting and time arithmetic. Display format: Times may be displayed in any of the supported time arithmetic formats.
The basic time unit is a minute.
DatetimeAllows time information to be plotted across multiple days. A datetime data field should have the format date.time (i.e. the date and time are connected using a dot). If your data has the date and time in two separate fields, the proc getdata filter attribute may be used to connect them with a dot. The date and time formats may be any of those supported for plotting and arithmetic. For example, if your datetime fields are like this: 22Aug1999.16:44 you would specify the datetime format as ddMmmyyyy.hh:mm. Display format: Same as above, except that the date component or the time component may be omitted if desired. The basic datetime unit is a day.
An example of datetime scaling is in
hitcount
Datetime with time windowingSometimes it is desirable to show only portions of each day, when showing the entire 24 hour day would be too much. Examples of this include a work day or a trading day. datetime scaling allows you to do this- you can indicate the time range for each day at the end of the datetime keyword. For example:
Rules: Only whole hours may be used in the time window definition. Time values that are outside the defined time window will be displayed at the time window boundary and a warning will be issued. The areadef range must contain time components that are within the time window range. Incremental axis labels in day, hour, or minutes units may be used. The end of one day and the beginning of the next day happen at the same point, and the next day stub takes presidence.
An example of datetime scaling with time window is in
hitcount3
|
![]() data display engine Copyright Steve Grubb ![]() |