[Matplotlib-devel] [ANN] Matplotlib 3.7.0

Hi all,

We are pleased to announce the release of Matplotlib 3.7.0.

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

We thank the 112 authors for the 427 pull requests that comprise the 3.7.0 release.

Highlights of this release include:

- Plotting and Annotation improvements
  - `hatch` parameter for pie
  - Polar plot errors drawn in polar coordinates
  - Additional format string options in `bar_label`
  - `ellipse` boxstyle option for annotations
  - The *extent* of `imshow` can now be expressed with units
  - Reversed order of legend entries
  - `pcolormesh` accepts RGB(A) colors
  - View current appearance settings for ticks, tick labels, and gridlines
  - Style files can be imported from third-party packages
- Improvements to 3D Plotting
  - 3D plot pan and zoom buttons
  - *adjustable* keyword argument for setting equal aspect ratios in 3D
  - `Poly3DCollection` supports shading
  - rcParam for 3D pane color
- Figure and Axes Layout
  - `colorbar` now has a *location* keyword argument
  - Figure legends can be placed outside figures using constrained_layout
  - Per-subplot keyword arguments in `subplot_mosaic`
  - `subplot_mosaic` no longer provisional
- Widget Improvements
  - Custom styling of button widgets
  - Blitting in Button widgets
- Other Improvements
  - Source links can be shown or hidden for each Sphinx plot directive
  - Figure hooks
- New & Improved Narrative Documentation
  - Brand new Animations tutorial.
  - New grouped and stacked bar chart examples.
  - New section for new contributors and reorganized git instructions in the contributing guide.
  - Restructured Annotations tutorial.

For further details, please see the What's new in Matplotlib 3.7.0 page:
https://matplotlib.org/stable/users/prev_whats_new/whats_new_3.7.0.html
and the milestone on GitHub:

For packagers, this release contains some changes to dependencies:

  * NumPy >=1.20 is now required.
  * pyparsing >=2.3.1 is now required.
  * Qt >=5.10 is now required for the Qt backends.
  * importlib >=3.2.0 is now required for Python < 3.10. (This is a new requirement)

This release is signed by my GPG key. The fingerprint is:
EB83 2218 7FD4 5119 2E43 0A72 79B3 FEC4 56F1 2599
and it is also used to sign this message.

···

--
Kyle Sunden
Matplotlib RSE

1 Like