4
4
Dependencies
5
5
============
6
6
7
+ Runtime dependencies
8
+ ====================
9
+
7
10
Mandatory dependencies
8
- ======================
11
+ ----------------------
9
12
10
13
When installing through a package manager like ``pip `` or ``conda ``, the
11
14
mandatory dependencies are automatically installed. This list is mainly for
@@ -24,13 +27,13 @@ reference.
24
27
.. _optional_dependencies :
25
28
26
29
Optional dependencies
27
- =====================
30
+ ---------------------
28
31
29
32
The following packages and tools are not required but extend the capabilities
30
33
of Matplotlib.
31
34
32
35
Backends
33
- --------
36
+ ~~~~~~~~
34
37
35
38
Matplotlib figures can be rendered to various user interfaces. See
36
39
:ref: `what-is-a-backend ` for more details on the optional Matplotlib backends
@@ -65,14 +68,14 @@ and the capabilities they provide.
65
68
downloaded from https://wxpython.org/pages/downloads/.
66
69
67
70
Animations
68
- ----------
71
+ ~~~~~~~~~~
69
72
70
73
* `ffmpeg <https://www.ffmpeg.org/ >`_: for saving movies.
71
74
* `ImageMagick <https://www.imagemagick.org/script/index.php >`_: for saving
72
75
animated gifs.
73
76
74
77
Font handling and rendering
75
- ---------------------------
78
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
76
79
77
80
* `LaTeX <https://www.latex-project.org/ >`_ (with `cm-super
78
81
<https://ctan.org/pkg/cm-super> `__ ) and `GhostScript (>=9.0)
@@ -81,7 +84,7 @@ Font handling and rendering
81
84
fonts on Linux.
82
85
83
86
C libraries
84
- ===========
87
+ -----------
85
88
86
89
Matplotlib brings its own copies of the following libraries:
87
90
@@ -161,3 +164,83 @@ If you go this route but need to reset and rebuild to change your settings,
161
164
remember to clear your artifacts before re-building::
162
165
163
166
git clean -xfd
167
+
168
+
169
+ .. _development-dependencies :
170
+
171
+ Additional dependencies for development
172
+ =======================================
173
+
174
+ .. _test-dependencies :
175
+
176
+ Additional dependencies for testing
177
+ ===================================
178
+ This section lists the additional software required for
179
+ :ref: `running the tests <testing >`.
180
+
181
+ Required:
182
+
183
+ - pytest _ (>=3.6)
184
+ - Ghostscript _ (>= 9.0, to render PDF files)
185
+ - Inkscape _ (to render SVG files)
186
+
187
+ Optional:
188
+
189
+ - pytest-cov _ (>=2.3.1) to collect coverage information
190
+ - pytest-flake8 _ to test coding standards using flake8 _
191
+ - pytest-timeout _ to limit runtime in case of stuck tests
192
+ - pytest-xdist _ to run tests in parallel
193
+
194
+ .. _pytest : http://doc.pytest.org/en/latest/
195
+ .. _Ghostscript : https://www.ghostscript.com/
196
+ .. _Inkscape : https://inkscape.org
197
+ .. _pytest-cov : https://pytest-cov.readthedocs.io/en/latest/
198
+ .. _pytest-flake8 : https://pypi.org/project/pytest-flake8/
199
+ .. _pytest-xdist : https://pypi.org/project/pytest-xdist/
200
+ .. _pytest-timeout : https://pypi.org/project/pytest-timeout/
201
+ .. _flake8 : https://pypi.org/project/flake8/
202
+
203
+
204
+ .. _doc-dependencies :
205
+
206
+ Additional dependencies for building documentation
207
+ ==================================================
208
+
209
+ Python packages
210
+ ---------------
211
+ The additional Python packages required to build the
212
+ :ref: `documentation <documenting-matplotlib >` are listed in
213
+ :file: `doc-requirements.txt ` and can be installed using ::
214
+
215
+ pip install -r requirements/doc/doc-requirements.txt
216
+
217
+ The content of :file: `doc-requirements.txt ` is also shown below:
218
+
219
+ .. include :: ../../requirements/doc/doc-requirements.txt
220
+ :literal:
221
+
222
+ Additional external dependencies
223
+ --------------------------------
224
+ Required:
225
+
226
+ * a minimal working LaTeX distribution
227
+ * `Graphviz <http://www.graphviz.org/download >`_
228
+ * the LaTeX packages *cm-super * and *dvipng * (if your OS bundles TeXLive, the
229
+ "complete" version of the installer, e.g. "texlive-full" or "texlive-all",
230
+ will often automatically include these packages)
231
+
232
+ Optional, but recommended:
233
+
234
+ * `Inkscape <https://inkscape.org >`_
235
+ * `optipng <http://optipng.sourceforge.net >`_
236
+ * the font "Humor Sans" (aka the "XKCD" font), or the free alternative
237
+ `Comic Neue <http://comicneue.com/ >`_
238
+ * the font "Times New Roman"
239
+
240
+ .. note ::
241
+
242
+ The documentation will not build without LaTeX and Graphviz. These are not
243
+ Python packages and must be installed separately. The documentation can be
244
+ built without Inkscape and optipng, but the build process will raise various
245
+ warnings. If the build process warns that you are missing fonts, make sure
246
+ your LaTeX distribution bundles cm-super or install it separately.
0 commit comments