Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions docs/source/user_manual/annotated_examples.rst
Original file line number Diff line number Diff line change
Expand Up @@ -110,9 +110,9 @@ source: `multiaxis.py <https://github.com/enthought/chaco/tree/master/examples/d
Draws some x-y line and scatter plots. On the left hand plot:
- Left-drag pans the plot.
- Mousewheel up and down zooms the plot in and out.
- Pressing "z" opens the Zoom Box, and you can click-drag a rectangular
- Pressing "z" opens the Zoom Box, and you can click-drag a rectangular
region to zoom. If you use a sequence of zoom boxes, pressing alt-left-arrow
and alt-right-arrow moves you forwards and backwards through the "zoom
and alt-right-arrow moves you forwards and backwards through the "zoom
history".

source: `multiaxis_using_Plot.py <https://github.com/enthought/chaco/tree/master/examples/demo/multiaxis_using_Plot.py>`_
Expand Down Expand Up @@ -379,7 +379,7 @@ source: `polygon_plot_demo.py <https://github.com/enthought/chaco/tree/master/ex

``polygon_move.py``
-------------------
Shares same basic interactions as polygon_plot.py, but adds a new one:
Shares same basic interactions as polygon_plot.py, but adds a new one:
right-click and drag to move a polygon around.

source: `polygon_move.py <https://github.com/enthought/chaco/tree/master/examples/demo/basic/polygon_move.py>`_
Expand Down Expand Up @@ -428,7 +428,7 @@ source: `scatter_select.py <https://github.com/enthought/chaco/tree/master/examp

console output::

New selection:
New selection:
[789 799 819 830 835 836 851 867 892 901 902 909 913 924 929
931 933 938 956 971 972 975 976 996 999 1011 1014 1016 1021 1030
1045 1049 1058 1061 1073 1086 1087 1088]
Expand Down Expand Up @@ -465,10 +465,10 @@ source: `traits_editor.py <https://github.com/enthought/chaco/tree/master/exampl
------------------------
Draws a colormapped scatterplot of some random data.

Interactions on the plot are the same as for simple_line.py, and additionally,
pan and zoom are available on the colorbar.
Interactions on the plot are the same as for simple_line.py, and additionally,
pan and zoom are available on the colorbar.

Left-click pans the colorbar's data region. Right-click-drag
Left-click pans the colorbar's data region. Right-click-drag
selects a zoom range. Mousewheel up and down zoom in and out on
the data bounds of the color bar.

Expand All @@ -479,7 +479,7 @@ source: `zoomable_colorbar.py <https://github.com/enthought/chaco/tree/master/ex
``zoomed_plot``
------------------------
The main executable file for the zoom_plot demo.

Right-click and drag on the upper plot to select a region to view in detail
in the lower plot. The selected region can be moved around by dragging,
or resized by clicking on one of its edges and dragging.
Expand Down
92 changes: 47 additions & 45 deletions docs/source/user_manual/faq.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
.. _faq:

##########################
Frequently Asked Questions
##########################
Expand Down Expand Up @@ -63,61 +65,61 @@ Peter Wang's response (excerpt)::
On May 11, 2007, at 8:03 AM, Bill Baxter wrote:

> Just curious. What are the pros and cons of chaco vs matplotlib?
You had to go and ask, didn't you? :) There are many more folks here
who have used MPL more extensively than myself, so I'll defer the
comparisons to them. (Gael, as always, thanks for your comments and

You had to go and ask, didn't you? :) There are many more folks here
who have used MPL more extensively than myself, so I'll defer the
comparisons to them. (Gael, as always, thanks for your comments and
feedback!) I can comment, however, on the key goals of Chaco.

Chaco is a plotting toolkit targeted towards developers for building
interactive visualizations. You hook up pieces to build a plot that
is then easy to inspect, interact with, add configuration UIs for
(using Traits UI), etc. The layout of plot areas, the multiplicity
and types of renderers within those windows, the appearance and
locations of axes, etc. are all completely configurable since these
are all first-class objects participating in a visual canvas. They
can all receive mouse and keyboard events, and it's easy to subclass
them (or attach tools to them) to achieve new kinds of behavior.
We've tried to make all the plot renderers adhere to a standard
interface, so that tools and interactors can easily inspect data and
map between screen space and data space. Once these are all hooked
Chaco is a plotting toolkit targeted towards developers for building
interactive visualizations. You hook up pieces to build a plot that
is then easy to inspect, interact with, add configuration UIs for
(using Traits UI), etc. The layout of plot areas, the multiplicity
and types of renderers within those windows, the appearance and
locations of axes, etc. are all completely configurable since these
are all first-class objects participating in a visual canvas. They
can all receive mouse and keyboard events, and it's easy to subclass
them (or attach tools to them) to achieve new kinds of behavior.
We've tried to make all the plot renderers adhere to a standard
interface, so that tools and interactors can easily inspect data and
map between screen space and data space. Once these are all hooked
up, you can swap out or update the data independently of the plots.

One of the downsides we had a for a while was that this rich set of
objects required the programmer to put several different classes
together just to make a basic plot. To solve this problem, we've
assembled some higher-level classes that have the most common
behaviors built-in by default, but which can still be easily
customized or extended. It's clear to me that this is a good general
One of the downsides we had a for a while was that this rich set of
objects required the programmer to put several different classes
together just to make a basic plot. To solve this problem, we've
assembled some higher-level classes that have the most common
behaviors built-in by default, but which can still be easily
customized or extended. It's clear to me that this is a good general
approach to preserving flexibility while reducing verbosity.

At this point, Chaco is definitely capable of handling a large number
of different plotting tasks, and a lot of them don't require too much
typing or hacking skills. (Folks will probably require more
documentation, however, but I'm working on that. :) I linked to the
source for all of the screenshots in the gallery to demonstrate that
you can do a lot of things with Chaco in a few dozen lines of code.
(For instance, the audio spectrogram at the bottom of the gallery is
At this point, Chaco is definitely capable of handling a large number
of different plotting tasks, and a lot of them don't require too much
typing or hacking skills. (Folks will probably require more
documentation, however, but I'm working on that. :) I linked to the
source for all of the screenshots in the gallery to demonstrate that
you can do a lot of things with Chaco in a few dozen lines of code.
(For instance, the audio spectrogram at the bottom of the gallery is
just a little over 100 lines.)

Fundamentally, I like the Chaco model of plots as compositions of
interactive components. This really helps me think about
visualization apps in a modular way, and it "fits my head". (Of
course, the fact that I wrote much of it might have something to do
with that as well. ;) The goal is to have data-related operations
clearly happen in one set of objects, the view layout and
configuration happen in another, and the interaction controls fit
neatly into a third. IMHO a good toolkit should help me design/
architect my application better, and we definitely aspire to make
Fundamentally, I like the Chaco model of plots as compositions of
interactive components. This really helps me think about
visualization apps in a modular way, and it "fits my head". (Of
course, the fact that I wrote much of it might have something to do
with that as well. ;) The goal is to have data-related operations
clearly happen in one set of objects, the view layout and
configuration happen in another, and the interaction controls fit
neatly into a third. IMHO a good toolkit should help me design/
architect my application better, and we definitely aspire to make
Chaco meet that criterion.

Finally, one major perk is that since Chaco is built completely on
top of traits and its event-based component model, you can call
edit_traits() on any visual component from within your app (or
ipython) and get a live GUI that lets you tweak all of its various
parameters in realtime. This applies to the axis, grid, renderers,
etc. This seems so natural to me that I sometimes forget what an
awesome feature it is. :)
Finally, one major perk is that since Chaco is built completely on
top of traits and its event-based component model, you can call
edit_traits() on any visual component from within your app (or
ipython) and get a live GUI that lets you tweak all of its various
parameters in realtime. This applies to the axis, grid, renderers,
etc. This seems so natural to me that I sometimes forget what an
awesome feature it is. :)



3 changes: 2 additions & 1 deletion docs/source/user_manual/tutorial_hyetograph.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
:orphan:

.. _tutorial_hyetograph:

Expand Down Expand Up @@ -112,7 +113,7 @@ The above code snippet shows a number of Traits features,

The Traits API Reference contains more information about the standard
Trait types; see the :mod:`trait_types` module in the `Traits API Reference
<http://code.enthought.com/projects/files/ETS3_API/traits.trait_types.html>`_.
<http://docs.enthought.com/traits/traits_api_reference/trait_types.html>`_.


Setting up the User Interface (UI)
Expand Down
1 change: 1 addition & 0 deletions docs/source/user_manual/tutorial_ipython.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
:orphan:

.. _tutorial_ipython:

Expand Down
Loading