We've been working behind the scenes on a new documentation system for
matplotlib, which integrates the web site, API documentation and PDF
guide into a single source of sphinx/rest documents which are easier
to maintain and extend, hopefully leading to better and more
up-to-date docs.
We went live with the new site yesterday:
so check it out and let us know if something is broken or missing. We
don't have everything that was on the old site (some stuff from the
FAQ, "what's new" and "user's guide" has not been ported over) but we
do have should be current, searchable, indexed and cross-linked.
Thanks to Darren Dale who spear-headed the effort to use the sphinx
documentation, and to the developers who have contributed, especially
Michael Droettboom, who has developed several nice sphinx extensions
to do inheritance diagrams, syntax highlighting of ipython sessions,
and inline plotting. As an example we can include plots in our API
documentation, see
http://matplotlib.sourceforge.net/api/axes_api.html#matplotlib.axes.Axes.acorr
We embed these plots with a "plot" directive that generates the
figures from external code at documentation build time, which
guarantees that the example code you see in the docs generate the
figures you see in the docs. For example, in the acorr docstring, all
we have to do is::
**Example:**
.. plot:: ../mpl_examples/pylab_examples/xcorr_demo.py
and the figure and source code links automagically appear in the docs.
Because some of these extensions are generally useful, Michael,
Fernando and I have been working on a "sphinx_template" which contains
the template of a sphinx documentation project with these extensions
in place, so people who want to get started using sphinx (the official
documentation system for python, numpy, ipython and matplotlib) can do
so more easily. Right now it is available in svn
> svn co https://matplotlib.svn.sourceforge.net/svnroot/matplotlib/trunk/py4science/examples/sphinx_template2
and see the README in the checkout directory. Michael also did a talk
on matplotlib's use of sphinx and the sphinx template at the last
scipy conference. We're still waiting for the videos of the talks to
be posted (can someone poke someone?) but you can see the talk PDF
from the proceedings here:
http://conference.scipy.org/proceedings/SciPy2008/paper_6/
JDH