It works fine with simple scripts with hard-coded data to large plotting programs with complex data interrelationships and a multitude of interactive tools.
While Chaco generates attractive static plots for publication and presentation, it also works well for interactive data visualization and exploration. Here are some key features of "Chaco":
· Flexible drawing and layout - Plots consist of graphical components which can be placed inside nestable containers for layout, positioning, and event dispatch. Every component has a configurable rendering loop with distinct layers and backbuffering. Containers can draw cooperatively so that layers span across the containment hierarchy.
· Modular and extensible architecture - Chaco is object oriented from the ground up for ease of extension and customization. There are clear interfaces and abstract classes defining extension points for writing your own custom behaviors, from custom tools, plot types, layouts, etc. Most classes are also "subclass-friendly", so that subclasses can override one or two methods and everything else just works.
· Data model for ease of extension and embedding - There is a well defined relationship between the data side of things, and we are working on an even more sophisticated and powerful generic data pipeline, leveraging some of the new features of NumPy.
· Python's setuptools