[SciPy-dev] Chaco class documentation?

David Ascher DavidA at ActiveState.com
Wed Mar 12 14:44:46 CST 2003

I'm trying (again) to use Chaco.  My needs are to build output files from 
dynamically generated data files, not interactive plots.  In other words, I 
want to use the classes directly, not through a GUI or through the .co format.

Is there documentation on the relationships between:

   - PlotValue
   - Canvas
   - PlotRenderer*
   - PlotTitle's
   - PlotLabel's
   - PlotItem's


The traits mechanism along with the dependence of the demo program on the .co 
files and the wxPython front end, coupled with a lack of 'lower-level' sample 
code, makes it fairly hard to figure out what the containing and aggregate 
relationships are.

I'm willing to maintain rough docs in the CVS tree, as long as people are 
willing to feed me information and review what I write.

We could start with a few bare facts, but that's where I really need input.

Things like:

The structure at the atomic level of a plot is a PlotItem.  It corresponds to 
a drawable object like a value point, a symbol, a tick mark.

A PlotItemList is a list of such PlotItems.

A PlotContainer is a container of XXX's.

A PlotFrame is XXX

A Plottable is XXX

A PlotCanvas is XXX

    The main purpose of a PlotCanvas is to be used in GUI applications and 
associated with scrollbars.

    A PlotCanvas contains one or more PlotItems.

A PlotValue corresponds to a data set.

     - data: a list or 1-darray of numbers ??

     - origin: ???

     - type: a type of plot.  Supported types include -- numbers indicate 
number of XXXXs
         - line (default) (1)
         - bar (histogram) (1+)
         - range (2)
         - scatter (1)
         - polygon (1)
         - stackedline (1+)
         - stackedbar (1+)
         - rangebar (2)
         - hloc (high/low/open/close) (3,4)
         - filllt (fill less than) (2)
         - fillne (fill not equal to) (2)
         - fillgt (fill greater than (2)
         - candle (candlestick) (4)

     - line_style: ???

     - line_color: a color

     - line_weight: a number (1 means 1 pixel??)

     - outline_color: a color

     - outline_weight: a number (1 means 1 pixel??)

     - fill_color: a color

     - fill_style: Not implemented yet

     - size: the size of the symbol

     - symbol: One of [None, 'circle', 'square', 'diamond', 'triangle', 'down 
triangle', 'cross', 'plus']

     - bar_width: a number

     - bin_width: a number -- meaning??

     - select_type: ???

     - select_notify: ???

   Colors can be represented with textual values (e.g. 'red') or with XXX.

More information about the Scipy-dev mailing list