API Changes in 1.3.x#
Changes in 1.3.1#
It is rare that we make an API change in a bugfix release, however, for 1.3.1 since 1.3.0 the following change was made:
text.Text.cached(used to cache font objects) has been made into a private variable. Among the obvious encapsulation benefit, this removes this confusing-looking member from the documentation.
The following items that were deprecated in version 1.2 or earlier have now been removed completely.
The Qt 3.x backends (
qtagg) have been removed in favor of the Qt 4.x backends (
The FltkAgg and Emf backends have been removed.
matplotlib.nxutilsmodule has been removed. Use the functionality on
matplotlib.path.Path.contains_pointand friends instead.
The following keyword arguments to the
legendfunction have been renamed:
pad -> borderpad
labelsep -> labelspacing
handlelen -> handlelength
handletextsep -> handletextpad
axespad -> borderaxespad
Related to this, the following rcParams have been removed:
histfunction, instead of width, use rwidth (relative width).
The printing functions in the Wx backend have been removed due to the burden of keeping them up-to-date.
mlab.liaupunovhas been removed.
widgets.HorizontalSpanSelectorhas been removed. Use
The CocoaAgg backend has been deprecated, with the possibility for deletion or resurrection in a future release.
The top-level functions in
matplotlib.paththat are implemented in C++ were never meant to be public. Instead, users should use the Pythonic wrappers for them in the
collections.Collectionclasses. Use the following mapping to update your code:
set_colorbarmethod is now deprecated. Instead, the
matplotlib.cm.ScalarMappable.colorbarattribute should be used. In previous Matplotlib versions this attribute was an undocumented tuple of
(colorbar_instance, colorbar_axes)but is now just
colorbar_instance. To get the colorbar axes it is possible to just use the
matplotlib.colorbar.ColorbarBase.axattribute on a colorbar instance.
matplotlib.mplmodule is now deprecated. Those who relied on this module should transition to simply using
import matplotlib as mpl.
Patchnow fully supports using RGBA values for its
edgecolorattributes, which enables faces and edges to have different alpha values. If the
alphaattribute is set to anything other than
None, that value will override any alpha-channel value in both the face and edge colors. Previously, if
alpha=None, the alpha component of
edgecolorwould be applied to both the edge and face.
set_foreground()(and the other GraphicsContext classes that descend from it) has been renamed to
isRGBA, and should now only be set to
fgcolor argument is known to be an RGBA tuple.
capstyleused is now
butt, to be consistent with the default for most other objects, and to avoid problems with non-solid
linestyleappearing solid when using a large
Pathobjects can now be marked as readonly by passing
readonly=Trueto its constructor. The built-in path singletons, obtained through
Path.unit*class methods return readonly paths. If you have code that modified these, you will need to make a deepcopy first, using either:
import copy path = copy.deepcopy(Path.unit_circle()) # or path = Path.unit_circle().deepcopy()
The list at
Path.NUM_VERTICESwas replaced by a dictionary mapping Path codes to the number of expected vertices at
To support XKCD style plots, the
matplotlib.path.cleanup_pathmethod's signature was updated to require a sketch argument. Users of
matplotlib.path.cleanup_pathare encouraged to use the new
Data limits on a plot now start from a state of having "null" limits, rather than limits in the range (0, 1). This has an effect on artists that only control limits in one direction, such as
axes.Axes.axhline, since their limits will no longer also include the range (0, 1). This fixes some problems where the computed limits would be dependent on the order in which artists were added to the axes.
Fixed a bug in setting the position for the right/top spine with data position type. Previously, it would draw the right or top spine at +1 data offset.
FancyArrow, the default arrow head width,
head_width, has been made larger to produce a visible arrow head. The new value of this kwarg is
head_width = 20 * width.
It is now possible to provide
number of levels + 1colors in the case of
extend='both'for contourf (or just
number of levelscolors for an extend value
max) such that the resulting colormap's
set_overare defined appropriately. Any other number of colors will continue to behave as before (if more colors are provided than levels, the colors will be unused). A similar change has been applied to contour, where
number of levels + 2colors.
The extension of
MultiCursorto both vertical (default) and/or horizontal cursor implied that
self.lineis replaced by
self.vlinefor vertical cursors lines and
self.hlineis added for the horizontal cursors lines.
matplotlib.cbook.check_outputfunction has been moved to
Configuration and rcParams#
On Linux, the user-specific
matplotlibrcconfiguration file is now located in
~/.config/matplotlib/matplotlibrcto conform to the XDG Base Directory Specification.
font.*rcParams now affect only text objects created after the rcParam has been set, and will not retroactively affect already existing text objects. This brings their behavior in line with most other rcParams.