File: development.rst

package info (click to toggle)
matplotlib 3.10.1%2Bdfsg1-5
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 78,340 kB
  • sloc: python: 147,118; cpp: 62,988; objc: 1,679; ansic: 1,426; javascript: 786; makefile: 92; sh: 53
file content (49 lines) | stat: -rw-r--r-- 2,156 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
Development changes
-------------------

Increase to minimum supported versions of Python and dependencies
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

For Matplotlib 3.4, the :ref:`minimum supported versions <dependencies>` are
being bumped:

+------------+-----------------+---------------+
| Dependency |  min in mpl3.3  | min in mpl3.4 |
+============+=================+===============+
|   Python   |       3.6       |      3.7      |
+------------+-----------------+---------------+
|  dateutil  |       2.1       |      2.7      |
+------------+-----------------+---------------+
|   numpy    |      1.15       |     1.16      |
+------------+-----------------+---------------+
| pyparsing  |      2.0.3      |     2.2.1     |
+------------+-----------------+---------------+

This is consistent with our :ref:`min_deps_policy` and `NEP29
<https://numpy.org/neps/nep-0029-deprecation_policy.html>`__

Qhull downloaded at build-or-sdist time
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Much like FreeType, Qhull is now downloaded at build time, or upon creation of
the sdist. To link against system Qhull, set the ``system_qhull`` option to
`True` in the :file:`setup.cfg` file. Note that Matplotlib now requires the
re-entrant version of Qhull (``qhull_r``).

``FigureBase`` class added, and ``Figure`` class made a child
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The new subfigure feature motivated some re-organization of the
`.figure.Figure` class, so that the new `.figure.SubFigure` class could have
all the capabilities of a figure.

The `.figure.Figure` class is now a subclass of `.figure.FigureBase`, where
`.figure.FigureBase` contains figure-level artist addition routines, and the
`.figure.Figure` subclass just contains features that are unique to the outer
figure.

Note that there is a new *transSubfigure* transform associated with the
subfigure.  This transform also exists for a `.Figure` instance, and is equal
to *transFigure* in that case, so code that uses the transform stack that wants
to place objects on either the parent figure or one of the subfigures should
use *transSubfigure*.