ANN: matplotlib 0.91.1

A new release of matplotlib is posted to the sourceforge download site

You can read the release notes with links at

enhanced mathtext - Complete revamp of matplotlib's internal math
layout and rendering engine. Michael Droetboom has improved the TeX
parser to significantly expand it's coverege, and implemeted Knuth's
box layout algorithms. Additionally, the much anticipated STIX fonts
for math expressions have come online and ship with matplotlib. See a
sample of the new mathtext at

better configuration - Darren Dale has provided support for a site.cfg
configuration file to enable users and package maintainers to have
better control over the matplotlib build process. He has also provided
a (currently optional) enthought.traits enabled property configuration
to replace matplotlib's rc configuration using a maplotlib.conf file

writing to file-like objects - You can now pass file like objects (eg
StringIO) to all backends for hardcopy. This has been a much requested
feature for usage in web application servers.

record array support - New functions for loading, displaying and
saving numpy record arrays in matplotlib.mlab. See for example,

pyplot - Added a module matplotlib.pyplot which has all of pylab's
plotting functions (eg figure, plot, show, close) but does not import
the numpy namepace. This is useful for those who want to use the pylab
functionality w/o the namespace clutter.

maskedarray - Added optional support for the scipy sandbox masked
array packaged. Configurable with an rc setting.

plotfile - Added new pylab/pyplot command plotfile for gnuplot style
file plotting

Here is the complete CHANGELOG


2007-11-27 Released 0.91.1 at revision 4517

2007-11-27 Released 0.91.0 at revision 4478

2007-11-13 All backends now support writing to a file-like object, not
          just a regular file. savefig() can be passed a file-like
          object in place of a file path. - MGD

2007-11-13 Improved the default backend selection at build time:
          SVG -> Agg -> TkAgg -> WXAgg -> GTK -> GTKAgg. The last usable
          backend in this progression will be chosen in the default
          config file. If a backend is defined in setup.cfg, that will
          be the default backend - DSD

2007-11-13 Improved creation of default config files at build time for
          traited config package - DSD

2007-11-12 Exposed all the build options in setup.cfg. These options are
          read into a dict called "options" by Also, added
          "-mpl" tags to the version strings for packages provided by
          matplotlib. Versions provided by mpl will be identified and
          updated on subsequent installs - DSD

2007-11-12 Added support for STIX fonts. A new rcParam,
          mathtext.fontset, can be used to choose between:

            The TeX/LaTeX Computer Modern fonts

            The STIX fonts (see

            The STIX fonts, using sans-serif glyphs by default

            A generic Unicode font, in which case the mathtext font
            must be specified using,,
            mathtext.sf etc.

          Added a new example, to show how to access
          different fonts and unusual symbols.

          - MGD

2007-11-12 Options to disable building backend extension modules moved
          from to setup.cfg - DSD

2007-11-09 Applied Martin Teichmann's patch 1828813: a QPainter is used in
          paintEvent, which has to be destroyed using the method end(). If
          matplotlib raises an exception before the call to end - and it
          does if you feed it with bad data - this method end() is never
          called and Qt4 will start spitting error messages

2007-11-09 Moved pyparsing back into matplotlib namespace. Don't use
          system pyparsing, API is too variable from one release
          to the next - DSD

2007-11-08 Made pylab use straight numpy instead of oldnumeric
          by default - EF

2007-11-08 Added additional record array utilites to mlab (rec2excel,
          rec2gtk, rec_join, rec_append_field, rec_drop_field) - JDH

2007-11-08 Updated pytz to version 2007g - DSD

2007-11-08 Updated pyparsing to version 1.4.8 - DSD

2007-11-08 Moved csv2rec to recutils and added other record array
          utilities - JDH

2007-11-08 If available, use existing pyparsing installation - DSD

2007-11-07 Removed old enthought.traits from lib/matplotlib, added
          Gael Varoquaux's enthought.traits-2.6b1, which is stripped
          of setuptools. The package is installed to site-packages
          if not already available - DSD

2007-11-05 Added easy access to minor tick properties; slight mod
          of patch by Pierre G-M - EF

2007-11-02 Commited Phil Thompson's patch 1599876, fixes to Qt4Agg
          backend and qt4 blitting demo - DSD

2007-11-02 Commited Phil Thompson's patch 1599876, fixes to Qt4Agg
          backend and qt4 blitting demo - DSD

2007-10-31 Made log color scale easier to use with contourf;
          automatic level generation now works. - EF

2007-10-24 Added ax kwarg to Figure.colorbar and pyplot.colorbar - EF

2007-10-19 Removed a gsave/grestore pair surrounding _draw_ps, which
          was causing a loss graphics state info (see "EPS output
          problem - scatter & edgecolors" on mpl-dev, 2007-10-29)
          - DSD

2007-10-15 Fixed a bug in patches.Ellipse that was broken for
          aspect='auto'. Scale free ellipses now work properly for
          equal and auto on Agg and PS, and they fall back on a
          polygonal approximation for nonlinear transformations until
          we convince oursleves that the spline approximation holds
          for nonlinear transformations. Added
          unit/ to compare spline with vertex
          approx for both aspects. JDH

2007-10-05 remove generator expressions from texmanager and mpltraits.
          generator expressions are not supported by python-2.3 - DSD

2007-10-01 Made matplotlib.use() raise an exception if called after
          backends has been imported. - EF

2007-09-30 Modified update* methods of Bbox and Interval so they
          work with reversed axes. Prior to this, trying to
          set the ticks on a reversed axis failed with an
          uninformative error message. - EF

2007-09-30 Applied patches to axes3d to fix index error problem - EF

2007-09-24 Applied Eike Welk's patch reported on mpl-dev on 2007-09-22
          Fixes a bug with multiple plot windows in the qt backend,
          ported the changes to backend_qt4 as well - DSD

2007-09-21 Changed cbook.reversed to yield the same result as the
          python reversed builtin - DSD

2007-09-13 The usetex support in the pdf backend is more usable now,
          so I am enabling it. - JKS

2007-09-12 Fixed a unit bug - JDH

2007-09-10 Made skiprows=1 the default on csv2rec - JDH

2007-09-09 Split out the plotting part of pylab and put it in
; removed numerix from the remaining,
          which imports everything from The intention
          is that apart from cleanups, the result of importing
          from pylab is nearly unchanged, but there is the
          new alternative of importing from pyplot to get
          the state-engine graphics without all the numeric
          Numpified examples; deleted two that were obsolete;
          modified some to use pyplot. - EF

2007-09-08 Eliminated gd and paint backends - EF

2007-09-06 .bmp file format is now longer an alias for .raw

2007-09-07 Added clip path support to pdf backend. - JKS

2007-09-06 Fixed a bug in the embedding of Type 1 fonts in PDF.
          Now it doesn't crash - JKS

2007-09-06 Refactored image saving code so that all GUI backends can
          save most image types. See FILETYPES for a matrix of
          backends and their supported file types.
          Backend canvases should no longer write their own print_figure()
          method -- instead they should write a print_xxx method for
          each filetype they can output and add an entry to their
          class-scoped filetypes dictionary. - MGD

2007-09-05 Fixed Qt version reporting in - DSD

2007-09-04 Embedding Type 1 fonts in PDF, and thus usetex support
          via dviread, sort of works. To test, enable it by
          renaming _draw_tex to draw_tex. - JKS

2007-09-03 Added ability of errorbar show limits via caret or
          arrowhead ends on the bars; patch by Manual Metz. - EF

2007-09-03 Created, added features to AFM and FT2Font
          (see API_CHANGES), started work on embedding Type 1 fonts
          in pdf files. - JKS

2007-09-02 Continued work on - JKS

2007-08-16 Added a set_extent method to AxesImage, allow data extent
          to be modified after initial call to imshow - DSD

2007-08-14 Fixed a bug in pyqt4 subplots-adjust. Thanks to
          Xavier Gnata for the report and suggested fix - DSD

2007-08-13 Use pickle to cache entire fontManager; change to using
           font_manager module-level function findfont wrapper for
           the fontManager.findfont method - EF

2007-08-11 Numpification and cleanup of and some examples - EF

2007-08-06 Removed mathtext2

2007-07-31 Refactoring of distutils scripts.
          - Will not fail on the entire build if an optional Python
            package (e.g. Tkinter) is installed but its development
            headers are not (e.g. tk-devel). Instead, it will
            continue to build all other extensions.
          - Provide an overview at the top of the output to display
            what dependencies and their versions were found, and (by
            extension) what will be built.
          - Use pkg-config, when available, to find freetype2, since
            this was broken on Mac OS-X when using MacPorts in a non-
            standard location.

2007-07-30 Reorganized configuration code to work with traited config
          objects. The new config system is located in the
          matplotlib.config package, but it is disabled by default.
          To enable it, set NEWCONFIG=True in
          The new configuration system will still use the old
          matplotlibrc files by default. To switch to the experimental,
          traited configuration, set USE_TRAITED_CONFIG=True in

2007-07-29 Changed default pcolor shading to flat; added aliases
          to make collection kwargs agree with setter names, so
          updating works; related minor cleanups.
          Removed quiver_classic, scatter_classic, pcolor_classic. - EF

2007-07-26 Major rewrite of, using the TeX box layout model.

          There is one (known) backward incompatible change. The
          font commands (\cal, \rm, \it, \tt) now behave as TeX does:
          they are in effect until the next font change command or
          the end of the grouping. Therefore uses of $\cal{R}$
          should be changed to ${\cal R}$. Alternatively, you may
          use the new LaTeX-style font commands (\mathcal, \mathrm,
          \mathit, \mathtt) which do affect the following group,
          eg. $\mathcal{R}$.

          Other new features include:

          - Math may be interspersed with non-math text. Any text
            with an even number of $'s (non-escaped) will be sent to
            the mathtext parser for layout.

          - Sub/superscripts are less likely to accidentally overlap.

          - Support for sub/superscripts in either order, eg. $x^i_j$
            and $x_j^i$ are equivalent.

          - Double sub/superscripts (eg. $x_i_j$) are considered
            ambiguous and raise an exception. Use braces to disambiguate.

          - $\frac{x}{y}$ can be used for displaying fractions.

          - $\sqrt[3]{x}$ can be used to display the radical symbol
            with a root number and body.

          - $\left(\frac{x}{y}\right)$ may be used to create
            parentheses and other delimiters that automatically
            resize to the height of their contents.

          - Spacing around operators etc. is now generally more like

          - Added support (and fonts) for boldface (\bf) and
            sans-serif (\sf) symbols.

          - Log-like function name shortcuts are supported. For
            example, $\sin(x)$ may be used instead of ${\rm sin}(x)$

          - Limited use of kerning for the easy case (same font)

          Behind the scenes, the module used for doing
          the math parsing was updated to the latest stable version
          (1.4.6). A lot of duplicate code was refactored out of the
          Font classes.

          - MGD

2007-07-19 completed numpification of most trivial cases - NN

2007-07-19 converted non-numpy relicts throughout the code - NN

2007-07-19 replaced the Python code in numerix/ by a minimal wrapper around
          numpy that explicitly mentions all symbols that need to be
          addressed for further numpification - NN

2007-07-18 make usetex respect changes to rcParams. texmanager used to
          only configure itself when it was created, now it
          reconfigures when rcParams are changed. Thank you Alexander
          Schmolck for contributing a patch - DSD

2007-07-17 added validation to setting and changing rcParams - DSD

2007-07-17 bugfix segfault in transforms module. Thanks Ben North for
          the patch. - ADS

2007-07-16 clean up some code in ticker.ScalarFormatter, use unicode to
          render multiplication sign in offset ticklabel - DSD

2007-07-16 fixed a formatting bug in ticker.ScalarFormatter's scientific
          notation (10^0 was being rendered as 10 in some cases) - DSD

2007-07-13 Add MPL_isfinite64() and MPL_isinf64() for testing
          doubles in (the now misnamed) MPL_isnan.h. - ADS

2007-07-13 The matplotlib._isnan module removed (use numpy.isnan) - ADS

2007-07-13 Some minor cleanups in _transforms.cpp - ADS

2007-07-13 Removed the rest of the numerix extension code detritus,
          numpified, and cleaned up the imports in
          - JDH

2007-07-13 Added legend.loc as configurable option that could in
          future default to 'best'. - NN

2007-07-12 Bugfixes in to coerce inputs into numpy arrays. -ADS

2007-07-11 Added linespacing kwarg to text.Text - EF

2007-07-11 Added code to store font paths in SVG files. - MGD

2007-07-10 Store subset of TTF font as a Type 3 font in PDF files. - MGD

2007-07-09 Store subset of TTF font as a Type 3 font in PS files. - MGD

2007-07-09 Applied Paul's pick restructure pick and add pickers,
          sourceforge patch 1749829 - JDH

2007-07-09 Applied Allan's draw_lines agg optimization. JDH

2007-07-08 Applied Carl Worth's patch to fix cairo draw_arc - SC

2007-07-07 fixed bug 1712099: xpdf distiller on windows - DSD

2007-06-30 Applied patches to tkagg, gtk, and wx backends to reduce
          memory leakage. Patches supplied by Mike Droettboom;
          see tracker numbers 1745400, 1745406, 1745408.
          Also made unit/ more flexible with
          command-line options. - EF

2007-06-30 Split defaultParams into separate file rcdefaults (together with
          validation code). Some heavy refactoring was necessary to do so,
          but the overall behavior should be the same as before. - NN

2007-06-27 Added MPLCONFIGDIR for the default location for mpl data
          and configuration. useful for some apache installs where
          HOME is not writable. Tried to clean up the logic in
          _get_config_dir to support non-writable HOME where are
          writable HOME/.matplotlib already exists - JDH

2007-06-27 Fixed locale bug reported at

          by adding a cbook.unicode_safe function - JDH

2007-06-27 Applied Micheal's tk savefig bugfix described at

          Thanks Michael!

2007-06-27 Patch for get_py2exe_datafiles() to work with new directory
          layout. (Thanks Tocer and also Werner Bruhin.) -ADS

2007-06-27 Added a scroll event to the mpl event handling system and
          implemented it for backends GTK* -- other backend
          users/developers/maintainers, please add support for your
          backend. - JDH

2007-06-25 Changed default to clip=False in colors.Normalize;
          modified ColorbarBase for easier colormap display - EF

2007-06-13 Added maskedarray option to rc, numerix - EF

2007-06-11 Python 2.5 compatibility fix for - EF

2007-06-10 In matplotlibrc file, use 'dashed' | 'solid' instead
          of a pair of floats for contour.negative_linestyle - EF

2007-06-08 Allow plot and fill fmt string to be any mpl string
           colorspec - EF

2007-06-08 Added gnuplot file plotfile function to pylab -- see
          examples/ - JDH

2007-06-07 Disable build of numarray and Numeric extensions for
          internal MPL use and the numerix layer. - ADS

2007-06-07 Added csv2rec to matplotlib.mlab to support automatically
          converting csv files to record arrays using type
          introspection, and turned on native datetime support using
          the new units support in matplotlib.dates. See
          examples/ ! JDH

2007-06-07 Simplified internal code of _auto_legend_data - NN

2007-06-04 Added labeldistance arg to Axes.pie to control the raidal
          distance of the wedge labels - JDH

2007-06-03 Turned mathtext in SVG into single <text> with multiple <tspan>
          objects (easier to edit in inkscape). - NN