[Matplotlib-announce] [ANN] Matplotlib 3.9.0

Hi all,

We are pleased to announce the publication of the 3.9.0 meso¹ release.

Pre-built wheels are available for most major platforms, and can be installed using `pip install matplotlib==3.9.0`. Other packages may also be available already; please check with your preferred source.

This release is the work of 175 authors over 450 Pull Requests, fixing 97 Issues. Highlights of this release include:

Plotting and Annotation improvements
  - Axes.inset_axes is no longer experimental
  - Legend support for Boxplot
  - Percent sign in pie labels auto-escaped with usetex=True
  - hatch parameter for stackplot
  - Add option to plot only one half of violin plot
  - axhline and axhspan on polar axes
  - Subplot titles can now be automatically aligned
  - axisartist can now be used together with standard Formatters
  - Toggle minorticks on Axis
  - StrMethodFormatter now respects axes.unicode_minus

Figure, Axes, and Legend Layout

  - Subfigures now have controllable zorders
  - Getters for xmargin, ymargin and zmargin

Mathtext improvements

  - mathtext documentation improvements
  - mathtext spacing corrections

Widget Improvements

  - Check and Radio Button widgets support clearing

3D plotting improvements

  - Setting 3D axis limits now set the limits exactly

Other improvements

  - New BackendRegistry for plotting backends
  - Add widths, heights and angles setter to EllipseCollection
  - image.interpolation_stage rcParam
  - Arrow patch position is now modifiable
  - NonUniformImage now has mouseover support

For further details, please see the release notes at
and the milestone on GitHub:

¹ Starting with this release, we have moved to the Effective Versioning scheme: EffVer: Version your code by the effort required to upgrade - Jacob Tomlinson