ANN: matplotlib-0.98.0 milestone release

matplotlib 0.98.0 is released

···

=============================

This is a milestone release of matplotlib with a significant internal
refactoring to support better transformations, path drawing, and
readily extensible coordinate projections and scales. Michael
Droettboom of STScI did the lion's share of the work, but a large
number of developers have made many significant contributions. This
is such a significant improvement of the matplotlib code base that we
are jumping from the 0.91 series to the 0.98 series, in anticipation
of rapid progress to 1.0.

Downloads are available at
http://sourceforge.net/project/platformdownload.php?group_id=80706
with binary installers for windows and OS X. Thanks to Charlie Moad
for the builds and release.

See the migration document at http://matplotlib.sf.net/MIGRATION.txt,
the API changes at http://matplotlib.sf.net/API_CHANGES, and the full
CHANGELOG at http://matplotlib.sf.net/CHANGELOG . You should manually
any old install of site-packages/matplotlib since the new version will
not properly install over it.

We've also done some work on the look and feel of the web site, with a
new logo an a less jarring color scheme, and are in the midst of a
fairly significant
documentation effort, so if you have any interest in writing documentation or
doing website design, join us on the developers list and ash how you can
contribute.

What's new in matplotlib 0.98

This is also available on the website at
http://matplotlib.sourceforge.net/whats_new.html

better transformations
----------------------

In what has been described as open-heart surgery on matplotlib,
Michael Droettboom, supported by STScI, has rewritten the transformation
infrastructure from the ground up, which not only makes the code more
intuitive, it supports custom user projections and scales. See
http://matplotlib.sf.net/doc/devel/add_new_projection.rst and
the http://matplotlib.sf.net/matplotlib.transforms.html module
documentation

proper paths
------------

For the first time, matplotlib supports spine paths across backends,
so you can pretty much draw anything. See the
http://matplotlib.sf.net/creenshots.html#path_patch_demo screenshot .
Thanks again to Michael Droettboom and STScI.

histogram enhancements
----------------------

hist can handle 2D arrays and create side-by-side or stacked
histograms, as well as cumulative filled and unfilled histograms
http://matplotlib.sf.net/examples/pylab/histogram_demo_extended.py

2D histogram hexbin
-------------------

2D hexagonal bin histogramming with optional log colorscales:
http://matplotlib.sourceforge.net/examples/pylab/hexbin_demo.py

ginput function
---------------

ginput (http://matplotlib.sf.net/matplotlib.pyplot.html#-ginput) is a
blocking function for interactive use to get input from the user. A
long requested feature submitted by Gael Varoquaux. See
http://matplotlib.sf.net/examples/pylab/ginput_demo.py.

image optimizations
-------------------

Enhancements to speed up color mapping and panning and zooming on dense images

better savefig
--------------

savefig (http://matplotlib.sf.net/matplotlib.pyplot.html#-savefig) now
supports save to file handles (great for web app servers) or unicode
filenames on all backends

record array functions
----------------------

some more helper functions to facilitate work with record arrays: rec_groupby,
rec2txt, and rec_summarize. These are found in matplotlib.mlab
(http://matplotlib.sf.net/matplotlib.mlab.html)

accurate elliptical arcs
------------------------

In support of the Phoenix mission to Mars, which used matplotlib in
ground tracking of the spacecraft, Michael Droettboom built on work by
Charlie Moad to provide an extremely accurate 8-spline approximation
to elliptical arcs (see
http://matplotlib.sf.net/matplotlib.patches.html#Arc-draw)win the
viewport. This provides a scale free, accurate graph of the arc
regardless of zoom level. See the screenshot and example at
http://matplotlib.sf.net/screenshots.html#ellipse_demo

imread enhanced
---------------

imread (http://matplotlib.sf.net/matplotlib.image.html#-imread) now
will use PIL when available to load images and return numpy arrays

backend enhancements
--------------------

* postscript : the postscript backend has clipping to paths (useful
for polar plots)

* PDF : the PDF backend handles composite glyphs properly, usetex fixes

* SVG : clip to path (useful for polar plots), inkscape cut-and-paste fixes.

* QT : Fixed a duplicate draw bug that slowed performance. Native qt
       toolbars and status bars used for the toolbar controls