Skip to content
Switch branches/tags

Latest commit

instead, the documentation should use version-specific links to ensure
that the links dont break inadvertantly

this commit also refactors the sphinx machinery to use the extlinks
sphinx extension and create the github-demo external link, which is what
is used in the documentation to link to version-specific links

note that this commit also fixes a number of broken links in the
annotated examples page of the docs

	modified:   docs/source/annotated_examples.rst
	modified:   docs/source/
	modified:   docs/source/user_manual/chaco_tutorial.rst
	modified:   docs/source/user_manual/tutorial_hyetograph.rst
	modified:   docs/source/user_manual/tutorial_van_der_waal.rst

Git stats


Failed to load latest commit information.
Latest commit message
Commit time

chaco: interactive 2-dimensional plotting

Chaco is a Python plotting application toolkit that facilitates writing plotting applications at all levels of complexity, from 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.


  • 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: Chaco separates the data from any transformations of the data that are needed for displaying it. This separation makes it easier to extend Chaco, or embed it in applications.


Chaco is only supported on Python >= 3.6. You must have the following libraries installed before building or installing Chaco:

Mailing list

To monitor discussions about Chaco, as well as the rest of the Enthought Tool Suite (Traits, TraitsUI, Chaco, Mayavi, ...), please refer to the ets-users google group .