3.4.3
This release contains several critical bug-fixes:
Clarify deprecation of Axes.figbox
Disable MultiCursor widget on Axes subplots which it is not tracking
Don't simplify path in LineCollection.get_segments
Fix DPI in subfigures, affecting tick spacing, and scatter marker size
Fix broken EPS output when using Type 42 STIX fonts
Fix change in tick behaviour when calling Axes.clear
Fix class docstrings for Norms created from Scales
Fix compatibility with NumPy 1.21.0
Fix crash on broken TrueType fonts
Fix incorrect hits from Path.intersects_path
Fix leak if affine_transform is passed invalid vertices
Fix legends of stackplot with edgecolors='face'
Fix plot directive when building in parallel
Fix supxlabel and supylabel behaviour in constrained layout
Fix tests with latest Inkscape and Ghostscript
Improve DateFormatter styling for month names when usetex=True
Re-disable autoscaling after interactive zoom
Work around bug in Pillow 8.3.0
What's new in Matplotlib 3.4.0
* Figure and Axes creation / management
- New subfigure functionality
- Single-line string notation for subplot_mosaic
- Changes to behavior of Axes creation methods (gca, add_axes, add_subplot)
- add_subplot/add_axes gained an axes_class parameter
- Subplot and subplot2grid can now work with constrained layout
* Plotting methods
- axline supports transform parameter
- New automatic labeling for bar charts
- A list of hatches can be specified to bar and barh
- Setting BarContainer orientation
- Contour plots now default to using ScalarFormatter
- Axes.errorbar cycles non-color properties correctly
- errorbar errorevery parameter matches markevery
- hexbin supports data reference for C parameter
- Support callable for formatting of Sankey labels
- Axes.spines access shortcuts
- New stairs method and StepPatch artist
- Added orientation parameter for stem plots
- Angles on Bracket arrow styles
- TickedStroke patheffect
* Colors and colormaps
- Collection color specification and mapping
- Transparency (alpha) can be set as an array in collections
- pcolormesh has improved transparency handling by enabling snapping
- IPython representations for Colormap objects
- Colormap.set_extremes and Colormap.with_extremes
- Get under/over/bad colors of Colormap objects
- New cm.unregister_cmap function
- New CenteredNorm for symmetrical data around a center
- New FuncNorm for arbitrary normalizations
- GridSpec-based colorbars can now be positioned above or to the left of the main axes
* Titles, ticks, and labels
- supxlabel and supylabel
- Shared-axes subplots tick label visibility is now correct for top or left labels
- An iterable object with labels can be passed to Axes.plot
* Fonts and Text
- Text transform can rotate text direction
- matplotlib.mathtext now supports overset and underset LaTeX symbols
- math_fontfamily parameter to change Text font family
- TextArea/AnchoredText support horizontalalignment
- PDF supports URLs on Text artists
* rcParams improvements
- New rcParams for dates: set converter and whether to use interval_multiples
- Date formatters now respect usetex rcParam
- Setting image.cmap to a Colormap
- Tick and tick label colors can be set independently using rcParams
* 3D Axes improvements
- Errorbar method in 3D Axes
- Stem plots in 3D Axes
- 3D Collection properties are now modifiable
- Panning in 3D Axes
* Interactive tool improvements
- New RangeSlider widget
- Sliders can now snap to arbitrary values
- Pausing and Resuming Animations
* Sphinx extensions
- plot_directive caption option
* Backend-specific improvements
- Consecutive rasterized draws now merged
- Support raw/rgba frame format in FFMpegFileWriter
- nbAgg/WebAgg support middle-click and double-click
- nbAgg support binary communication
- Indexed color for PNG images in PDF files when possible
- Improved font subsettings in PDF/PS
- Kerning added to strings in PDFs
- Fully-fractional HiDPI in QtAgg
- wxAgg supports fullscreen toggle
v3.3.4:
This release contains several critical bug-fixes:
Fix WebAgg initialization.
Fix parsing QT_API setting with mixed case.
Fix build with link-time optimization disabled in environment.
Fix test compatibility with NumPy 1.20.
Fix test compatibility with pytest 6.2.
v3.3.3
This release contains several critical bug-fixes:
Fix calls to Axis.grid with argument visible=True.
Fix fully masked imshow.
Fix inconsistent color mapping in scatter for 3D plots.
Fix notebook/nbAgg figures when used with ipywidgets in the same cell.
Fix notebook/nbAgg/WebAgg on older (e.g., Firefox ESR) browsers.
Fix pcolormesh with datetime coordinates.
Fix performance regression with datetimes.
Fix singular ticks with small log ranges.
Fix timers/animations on wx and notebook backends.
Remove certifi as a hard runtime dependency.
v3.3.2
This release contains several critical bug-fixes:
fix Axis scale on twinned Axes
fix auto-close of Figures in nbagg
fix automatic title placement if Axes is off the Figure
fix autoranging of log scales with barstacked histogram
fix extra redraws when using Button or TextBox widgets
fix imshow with LogNorm and large vmin/vmax ranges
fix plotting Pandas DataFrame with string MultiIndex
fix scatter with marker=''
fix scatter3d color/linewidth re-projection
fix state of mode buttons in TkAgg backends
include license files in built distribution
reduce Visual C++ runtime requirements on Windows
v3.3.1
This release contains several critical bug-fixes:
fix docstring import issues when running Python with optimization
fix hist with categorical data, such as with Pandas
fix install on BSD systems
fix nbagg compatibility with Chrome 84+
fix ordering of scatter marker size in 3D plots
fix performance regression when plotting Paths
fix reading from URL in imread
fix several regressions with new date epoch handling
fix some bad constrained and tight layout interactions with colorbars
fix use of customized toolbars in TkAgg and WXAgg backends
v3.3.0
Highlights of this release include:
Provisional API for composing semantic axes layouts from text or nested lists
New Axes.sharex, Axes.sharey methods
Turbo colormap
colors.BoundaryNorm supports extend keyword argument
Text color for legend labels
Pcolor and Pcolormesh now accept shading='nearest' and 'auto'
Allow tick formatters to be set with str or function inputs
New Axes.axline method
Dates use a modern epoch
Improved font weight detection
Axes3D no longer distorts the 3D plot to match the 2D aspect ratio
More consistent toolbar behavior across backends
Toolbar icons are now styled for dark themes
Cursor text now uses a number of significant digits matching pointing precision
Functions to compute a Path's size
savefig() gained a backend keyword argument
Saving SVG now supports adding metadata
Saving PDF metadata via PGF now consistent with PDF backend
NbAgg and WebAgg no longer use jQuery & jQuery UI
Install the new interchangeable BLAS system created by Thomas Orgis,
currently supporting Netlib BLAS/LAPACK, OpenBLAS, cblas, lapacke, and
Apple's Accelerate.framework. This system allows the user to select any
BLAS implementation without modifying packages or using package options, by
setting PKGSRC_BLAS_TYPES in mk.conf. See mk/blas.buildlink3.mk for details.
This commit should not alter behavior of existing packages as the system
defaults to Netlib BLAS/LAPACK, which until now has been the only supported
implementation.
Details:
Add new mk/blas.buildlink3.mk for inclusion in dependent packages
Install compatible Netlib math/blas and math/lapack packages
Update math/blas and math/lapack MAINTAINER approved by adam@
OpenBLAS, cblas, and lapacke will follow in separate commits
Update direct dependents to use mk/blas.buildlink3.mk
Perform recursive revbump
What's new in Matplotlib 3.2
Unit converters recognize subclasses
imsave accepts metadata and PIL options
cbook.normalize_kwargs
FontProperties accepts os.PathLike
Gouraud-shading alpha channel in PDF backend
Kerning adjustments now use correct values
bar3d lightsource shading
Shifting errorbars
Improvements in Logit scale ticker and formatter
rcParams for axes title location and color
3-digit and 4-digit hex colors
What's new in Matplotlib 3.2
Unit converters recognize subclasses
imsave accepts metadata and PIL options
cbook.normalize_kwargs
FontProperties accepts os.PathLike
Gouraud-shading alpha channel in PDF backend
Kerning adjustments now use correct values
bar3d lightsource shading
Shifting errorbars
Improvements in Logit scale ticker and formatter
rcParams for axes title location and color
3-digit and 4-digit hex colors
REL: v3.1.3
This is the final planned release of the 3.1.x series.
This release contains several critical bug-fixes:
- suppress a warning with Pandas 1.0
- support pillow >= 7
- support dateutils >= 2.8.1
- prevent an infinite recursion
- do not clobber non-python registered signal handler
- fix path intersection computation with 0 length segments
- fix performance regression in draw_idle
- several minor bugs
v3.1.2:
- fix regresion of incorrect limits for y-axis in imshow
- fix integer indexed pandas series
- fix ScalarFormatter formatting of masked values
- webagg and nbagg no longer incorrectly fallback to agg when $DISPLAY is not set
- several fixes for Qt5 backend
- other bugfixes and documentation fixes
REL: v3.1.0
The first release of the v3.1 series
This version of Matplotlib support Python 3.6+
Highlights of this release include:
- A helper method for scatter legends
- Secondary axis support (ex, degrees and radians)
- A concise date formatter
- No longer requires a framework build of Python to use OSX backend
- Major and minor ticks will no longer collide by default
- A progress callback for animations
- mplot3D is always registered
- deprecated mlab functions have been removed
- Many function calls have become stricter about invalid or ignored input
REL: v3.0.3
The third and last planned bug-fix release of the 3.0 series
* fix several possible memory leaks
* documentation fixes
jquery-ui is no longer bundled in git repo and is downloaded during
the install or sdist process. If you are installing from pypi the
files will be included, but if you are installing from git you will
need internet access the first time you run `pip install .`. The
install process tries to cache the files and will not need internet
access on future installations.
REL: v3.0.2
This is the second bug-fix release for the v3.0 series.
- Un-breaks basemap which was broken by partially restoring
private APIs for cartopy.
- Fixes bug in warning code when used in an embedded context.
- Fixes crash when using Tk and closing the first open window before showing it
- Many documentation improvements.
- Restore a corner case on ColorBar tick usage.
- Change the default behavior of `matplotlib.use` to silently allow
more 'safe' switching after auto-discovery, but before starting an event loop.
- Improvements to bounding box calculations.
- Provide the correct length for RcParams instances.
REL: v3.0.1
This is the first bug fix release for the 3.0 series which fixes
several
- Fix failure to import bug when used with backend-fallback on Python
3.6.7 and 3.7.1
- Fixed a number of failure to import bugs around finding fonts
- Fix Qt4 backend
- Fix bug on OSX that recursively searched current directory for fonts
- Fix bouncing-rocket on OSX when doing backend fallback and not
selecting OSX
- Temporarily restore several private APIs to unbreak cartopy
- Make pyplot more tolerant of varying signatures in 3rd-party
sub-classe
- Improve datetime64 unit handling
- Fixed several poor interactions with tight_layout
REL: v3.0.0
The first release of the Matplotlib 3.0 series
This is the first version of Matplotlib to only support Python 3.
Highlights of this release include:
- GUI backend is selected at run-time based on what toolkits are
installed. A GUI toolkit will not be selected on a headless
server.
- New cyclic color map *twilight*
- Improvements to automatic layout of titles, ticks, and GridSpec
- Many bug fixes!
v2.2.2 LTS
This release fixes a number of critical bugs:
- restores matplotlib.verbose (fixing embedding in pycharm)
- preserve precision when color mapping small portions of data with
extreme outliers
- fixes saving long movies with ffmpeg
- fixes UnbourdLocal error in contour labeling
- fixes import failure on python 3.4.0 and 3.4.1
- fixes compile time failures with clang on 32bit platforms
- fixes an icon in the Tk backends
- fixes several issues with Tables
- fixes expanding offset boxes with tight_layout
- revert changes to the font caching to avoid a possible bug in
backports.lru_cache
- numerous docstring and documentation fixes
We have reverted the deprecation of font_manager.TempCache.
v2.2.1 did not actually restore matplotlib.verbose.
v2.2.1 LTS
This release fixes a number of critical bugs:
- restores matplotlib.verbose (fixing embedding in pycharm)
- preserve precision when color mapping small portions of data with
extreme outliers
- fixes saving long movies with ffmpeg
- fixes UnbourdLocal error in contour labeling
- fixes import failure on python 3.4.0 and 3.4.1
- fixes compile time failures with clang on 32bit platforms
- fixes an icon in the Tk backends
- fixes several issues with Tables
- fixes expanding offset boxes with tight_layout
- revert changes to the font caching to avoid a possible bug in
backports.lru_cache
- numerous docstring and documentation fixes
We have reverted the deprecation of font_manager.TempCache.
v2.2.0 LTS
This release includes new features including:
- An experimental constrained layout manager
- Color blind friendly color map (cividis) and color cycle
(tableau-colorblind10)
- native support for numpy.datetime64 types
- animated gif writing via pillow
- TkAgg now works with pypy
- cairo based backends for Qt, Tk, and WX
There are several API changes in this release:
- To support the constrained layout Matplotlib has a new required
dependency (kiwisolver).
- The matplotlib.finance module has been removed, development has
moved to a stand-alone project.
2.1.2:
This release fixes a number of critical bugs:
- fix a typo in mlab.cohere which yielded incorrect results
- allow nonposx / nonposy to pass through loglog
- fix color comparisons when finding handles with legend
- fixes a recursive draw bug and a major performance regression in
Qt5Agg backend
- fix a re-draw bug in WxAgg
- fix image scaling with high-bit depth integers
- revert the busy-cursor
v2.1.0:
This is the second minor release in the Matplotlib 2.x series and the first
release with major new features since 1.5.
This release contains approximately 2 years worth of work by 275 contributors
across over 950 pull requests. Highlights from this release include:
* support for string categorical values
* export of animations to interactive javascript widgets
* major overhaul of polar plots
* reproducible output for ps/eps, pdf, and svg backends
* performance improvements in drawing lines and images
* GUIs show a busy cursor while rendering the plot
* along with many other enhancements and bug fixes.
pkgsrc changes:
- add test target (Ran 5205 tests in 362.603s OK (KNOWNFAIL=468, SKIP=15))
- drop merged patches
- rediff setup.py patch (it got renamed)
upstream changes:
REL: v1.5.2
Final planned release for the 1.5.x series.
REL: v1.5.1
First bug fix release for 1.5.x series.
REL: v1.5.0
This release of matplotlib has several major new features:
Auto-redraw using the object-oriented API.
Most plotting functions now support labeled data API.
Color cycling has extended to all style properties.
Four new perceptually uniform color maps, including the soon-to-be default 'viridis'.
More included style sheets.
Many small plotting improvements.
Proposed new framework for managing the GUI toolbar and tools.
REL: v1.4.3
This is the last planned bug-fix release in the 1.4 series.
Many bugs are fixed including:
fixing drawing of edge-only markers in AGG
fix run-away memory usage when using %inline or saving with a tight bounding box with QuadMesh artists
improvements to wx and tk gui backends
Additionally the webagg and nbagg backends were brought closer to
feature parity with the desktop backends with the addition of keyboard
and scroll events thanks to Steven Silvester.
REL: v1.4.2
Minor bug-fix release for 1.4 series
regenerated pyplot.py
REL: v1.4.1
Bug-fix release for the 1.4 series.
reverts the changes to interactive plotting so ion will work as before in all cases
fixed boxplot regressions
fixes for finding freetype and libpng
sundry unicode fixes (looking up user folders, importing seaborn/pandas/networkx with macosx backend)
nbagg works with python 3 + new font awesome
fixed saving dialogue in QT5
REL: v1.4.0
This release has contributions from ~170 authors
(http://matplotlib.org/users/github_stats.html).
This release contains many bug fixes as will as a number of new
features. For the full list see
http://matplotlib.org/users/whats_new.html#new-in-matplotlib-1-4.
Some highlights are:
style module : experimental package to make managing the style of matplotlib figures easier
nbagg : interactive figures in ipython notebooks backed by the AGG renderer
full python 3 support (including cairo backends)
Qt5 support (for python 3 only)
violin plots and 3D quiver plots (projects done for a course at University of Toronto, Scarborough)
improved box plot interface
Problems found with existing digests:
Package fotoxx distfile fotoxx-14.03.1.tar.gz
ac2033f87de2c23941261f7c50160cddf872c110 [recorded]
118e98a8cc0414676b3c4d37b8df407c28a1407c [calculated]
Package ploticus-examples distfile ploticus-2.00/plnode200.tar.gz
34274a03d0c41fae5690633663e3d4114b9d7a6d [recorded]
da39a3ee5e6b4b0d3255bfef95601890afd80709 [calculated]
Problems found locating distfiles:
Package AfterShotPro: missing distfile AfterShotPro-1.1.0.30/AfterShotPro_i386.deb
Package pgraf: missing distfile pgraf-20010131.tar.gz
Package qvplay: missing distfile qvplay-0.95.tar.gz
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
2013-05-18 Added support for arbitrary rasterization resolutions to the
SVG backend. Previously the resolution was hard coded to 72
dpi. Now the backend class takes a image_dpi argument for
its constructor, adjusts the image bounding box accordingly
and forwards a magnification factor to the image renderer.
The code and results now resemble those of the PDF backend.
- MW
2013-05-08 Changed behavior of hist when given stacked=True and normed=True.
Histograms are now stacked first, then the sum is normalized.
Previously, each histogram was normalized, then they were stacked.
2013-04-25 Changed all instances of:
from matplotlib import MatplotlibDeprecationWarning as mplDeprecation
to:
from cbook import mplDeprecation
and removed the import into the matplotlib namespace in __init__.py
Thomas Caswell
2013-04-15 Added 'axes.xmargin' and 'axes.ymargin' to rpParams to set default
margins on auto-scaleing. - TAC
2013-04-16 Added patheffect support for Line2D objects. -JJL