依存関係#
ランタイムの依存関係#
必須の依存関係#
pip
またはのようなパッケージ マネージャーを使用してインストールするconda
と、必須の依存関係が自動的にインストールされます。このリストは主に参考用です。
オプションの依存関係#
次のパッケージとツールは必須ではありませんが、Matplotlib の機能を拡張します。
バックエンド#
Matplotlib の図は、さまざまなユーザー インターフェイスにレンダリングできます。バックエンドとは?を参照してください 。オプションの Matplotlib バックエンドとそれらが提供する機能の詳細については、
Tk (>= 8.4, != 8.6.0 または 8.6.1): Tk ベースのバックエンド用。Tk はほとんどの標準的な Python インストールの一部ですが、Python 自体の一部ではないため、まれに存在しない場合があります。
PyGObjectおよびpycairo (>= 1.14.0): GTK ベースのバックエンド用。pip を使用する場合 (conda またはシステム パッケージ マネージャーを使用しない場合)、PyGObject をソースからビルドする必要があります。pygobject のドキュメントを参照してください。
pycairo (>= 1.14.0) またはcairocffi (>= 0.8): cairo ベースのバックエンド用。
wxPython (>= 4): wx ベースのバックエンド用。Linux で pip (conda またはシステム パッケージ マネージャーを除く) を使用する場合、wxPython ホイールはhttps://wxpython.org/pages/downloads/から手動でダウンロードする必要があります。
Tornado (>= 5): WebAgg バックエンド用。
ipykernel : nbagg バックエンド用。
macOS (>= 10.12): macosx バックエンド用。
アニメーション#
ffmpeg : 動画の保存用。
ImageMagick : アニメーション GIF の保存用。
フォントの処理とレンダリング#
LaTeX ( cm-superおよびunderscoreを使用) およびGhostScript (>= 9.0) : LaTeX でテキストをレンダリングする場合。
fontconfig (>= 2.7): Linux でのシステム フォントの検出用。
C ライブラリ#
Matplotlib は、次のライブラリの独自のコピーを提供します。
Agg
: Anti-Grain Geometry C++ レンダリング エンジンttconv
: TrueType フォント ユーティリティ
さらに、Matplotlib は以下に依存します。
デフォルトでは、Matplotlib は FreeType (FreeType のバージョンによって文字のラスタライズが異なるため、テスト スイートを実行するために必要です) と Qhull の独自のコピーをダウンロードしてビルドします。例外として、Matplotlib はデフォルトで AIX 上の FreeType のシステム バージョンになります。
システムにすでにインストールされている FreeType または Qhull のコピーを Matplotlib で強制的に使用するにはmplsetup.cfg
、次の内容のファイルを作成します。
[libs]
system_freetype = true
system_qhull = true
実行する前に。python -m pip install .
この場合、FreeType および Qhull ライブラリとヘッダーをインストールする必要があります。これは、FreeType などのパッケージ マネージャーを使用して実現できます。
# Pick ONE of the following:
sudo apt install libfreetype6-dev # Debian/Ubuntu
sudo dnf install freetype-devel # Fedora
brew install freetype # macOS with Homebrew
conda install freetype # conda, any OS
(Qhull に合わせて調整します)。
Linux および macOS では、 FreeType を見つけるためのヘルパー ツールであるpkg-configをインストールすることもお勧めします。
# Pick ONE of the following:
sudo apt install pkg-config # Debian/Ubuntu
sudo dnf install pkgconf # Fedora
brew install pkg-config # macOS with Homebrew
conda install pkg-config # conda
# Or point the PKG_CONFIG environment variable to the path to pkg-config:
export PKG_CONFIG=...
pkg-config を使用しない場合 (特に Windows の場合)、インクルード パス (ライブラリ ヘッダーへの) とリンク パス (ライブラリへの) を明示的に設定する必要がある場合があります (それらが標準の場所にない場合)。これは、標準の環境変数を使用して行うことができます -- Linux および OSX では:
export CFLAGS='-I/directory/containing/ft2build.h'
export LDFLAGS='-L/directory/containing/libfreetype.so'
Windows の場合:
set CL=/IC:\directory\containing\ft2build.h
set LINK=/LIBPATH:C:\directory\containing\freetype.lib
このルートをたどり、設定を変更するためにリセットして再構築する必要がある場合は、再構築する前にアーティファクトをクリアすることを忘れないでください。
git clean -xfd
最小限の pip / manylinux サポート (linux) #
Matplotlib は、ホイールを認識する最小バージョンの pip を持つ多くのLinux ホイールを公開しています
Python 3.8:
manylinx2010
/ ピップ >= 19.0Python 3.9 以降:
manylinx2014
/ pip >= 19.3
いずれの場合も、必要なバージョンの pip は CPython ソースに組み込まれています。
Matplotlib を構築するための依存関係#
依存関係の設定#
certifi (>= 2020.06.20). ビルド中に freetype と QHull ソースをダウンロードする際に使用されます。これは実行時の依存関係ではありません。
setuptools_scm (>= 7)。
mpl.__version__
現在の git commit に基づいてレポートを更新するために使用されます。また、編集可能なインストールのランタイム依存関係。NumPy (>= 1.19)。また、ランタイムの依存関係。
C++ コンパイラ#
Matplotlib には、C++11 をサポートする C++ コンパイラが必要です。
クラン3.3以上
Visual Studio 2015 (別名 VS 14.0) 以降
Matplotlib をテストするための依存関係#
このセクションでは、テストの実行に必要な追加ソフトウェアをリストし ます。
必須:
pytest (>= 3.6)
オプション:
メイン ライブラリのすべてのオプションの依存関係に加えて、テスト用に以下がインストールされている場合に使用されます。
Ghostscript (>= 9.0、PDF ファイルをレンダリングするため)
Inkscape (SVG ファイルをレンダリングするため)
Pandas との互換性をテストするために使用されるpandas
pgfおよび pdf バックエンドの一部のテストで使用される pikepdf
対話型バックエンドのテストに使用されるpsutil
カバレッジ情報を収集するpytest-cov (>= 2.3.1)
テストがスタックした場合に実行時間を制限するpytest-timeout
テストを並行して実行するpytest-xdist
ウィンドウがポップアップせずにテストを実行するpytest-xvfb (Linux)
pytz int のテストに使用される pytz
Sphinx拡張機能のテストに使用されるsphinx
WenQuanYi Zen Hei およびNoto Sans CJK フォント (フォント フォールバックおよび非西洋フォントのテスト用)
xarrayとの互換性をテストするために使用される xarray
これらの依存関係のいずれかが検出されない場合、それらに依存するテストは pytest によってスキップされます。
ノート
Inkscape を Windows にインストールするときは、すべてのユーザーまたは現在のユーザーに対して [Inkscape をシステム PATH に追加] を選択していることを確認してください。そうしないと、テストで検出されません。
Matplotlib のドキュメントを構築するための依存関係#
Python パッケージ#
ドキュメントのビルドに必要な追加の Python パッケージ
は に一覧表示されて
おり、次doc-requirements.txt
を使用してインストールできます。
pip install -r requirements/doc/doc-requirements.txt
の内容doc-requirements.txt
も以下に示します。
# Requirements for building docs # # You will first need a matching Matplotlib installation # e.g (from the Matplotlib root directory) # pip install -e . # # Install the documentation requirements with: # pip install -r requirements/doc/doc-requirements.txt # sphinx>=3.0.0 colorspacious ipython ipywidgets numpydoc>=1.0 packaging>=20 pydata-sphinx-theme>=0.9.0 mpl-sphinx-theme~=3.6.0 sphinxcontrib-svg2pdfconverter>=1.1.0 sphinx-gallery>=0.10 sphinx-copybutton sphinx-design
追加の外部依存関係#
必須:
最小限の作業用 LaTeX ディストリビューション
次の LaTeX パッケージ (お使いの OS に TeXLive がバンドルされている場合、"完全な" バージョンのインストーラー ("texlive-full" や "texlive-all" など) には、多くの場合、これらのパッケージが自動的に含まれます):
オプションですが、推奨されます:
フォント "Humor Sans" (別名 "XKCD" フォント)、または無料の代替 Comic Neue
フォント「Times New Roman」
ノート
ドキュメントは、LaTeX と Graphviz なしではビルドされません。これらは Python パッケージではないため、個別にインストールする必要があります。ドキュメントは Inkscape と optipng なしでビルドできますが、ビルド プロセスでさまざまな警告が発生します。ビルド プロセスでフォントが見つからないという警告が表示された場合は、LaTeX ディストリビューションに cm-super がバンドルされていることを確認するか、個別にインストールしてください。