Next: Examples
Up: Graphite A portable graphing
Previous: Introduction
Graphite uses an object-oriented design which allows new plot types (i.e. PlotFormats)
to be added easily. As a result, it is expected that the types of plots available
will continue to grow.
At a mininum,
we expect to implement at least the following types:
- [Point Plot]A combination of scatter and line plot; each point in the
dataset is plotted with a certain symbol, and connected to its neighbor with
lines. The line may be omitted to obtain a traditional scatter plot; the symbols
may also be omitted if lines are drawn. Optional error bars are available on
all three axes; these may be specified asymmetrically or symmetrically. Line
style and symbol style are configurable. Points may also be individually labelled.
Lines may optionally be given a fill style, used to fill below the line, and
a Z-thickness used in 3D plots.
- [Bar Plot]Each point is represented as a bar; the Y value indicates
the height of the bar, and the X and Z specify bar position. Bar style (color,
hashing, width, etc.) are configurable. Graphs containing multiple bar plots
combine their displays in one of several ways: by displaying bars side-by-side,
by stacking, or by overlaying. Bars may be individually labelled at the top.
Labels below the bars may be specified as tick mark labels, as with any other
plot type. Possibly, one may also give a set of labels as the X coordinate data
(but this notion is not fully worked out yet).
- [Polar Plot]Each Y value specifies the radius of the data point and
each X value specifies the angle.
- [Pie Plot]Each Y value specifies the angular extent of a slice of the
pie; Z values, if given, are used to ``explode'' a slice out from the center.
Each slice may be individually styled and labelled. The pie plot also has global
attributes specifying its position and extent, making it easy to put several
pies into one chart.
- [Density Plot]Requires three-dimensional data (e.g., Y as a function
of X and Z). This plot is given a plane (defaulting to Z=0) on which to draw,
and a palette function (several standard palettes will be provided); each point
on the plane will be colored according to the corresponding Y value in the data.
Additionally, isocontours can be located in the data and added to the plot.
- [Surface Plot]Similar to a Density plot, except that the surface drawn
is extended into the third dimension rather than being confined to a plane.
The surface is drawn with hidden line removal (unless the fill style is transparent),
and with optional lighting. The user may also specify a color function to be
applied to each point in the surface, e.g., color as a function of Y. One may
also add either a mesh (periodic grid lines which follow the surface) to enhance
perception of the surface, or contour lines. The camera position and projection
time (perspective or orthographic) are adjustable - true with any plot, but
especially relevant to the Surface plot. We hope to also add support for surfaces
defined by irregularly sampled points.
- [Image Plot]Also similar to a Density plot, but more efficient at displaying
large matrices of color values.
At the time of this writing only the Point Plot and Bar Plot graph types are
implemented.
Next: Examples
Up: Graphite A portable graphing
Previous: Introduction
Michelle Mills Strout
11/15/1999