安装#

安装官方发行版#

Matplotlib 发行版以 wheel 包的形式在 PyPI 上提供,适用于 macOS、Windows 和 Linux。使用 pip 安装它

python -m pip install -U pip
python -m pip install -U matplotlib

如果此命令导致从源代码编译 Matplotlib,并且编译出现问题,您可以添加 --prefer-binary 来选择适用于您的操作系统和 Python 的 Matplotlib 最新预编译 wheel 版本。

注意

以下后端可以开箱即用:Agg、ps、pdf、svg

Python 通常附带 tk 绑定,TkAgg 使用它。

为了支持其他 GUI 框架、LaTeX 渲染、保存动画和更多文件格式,您可以安装可选依赖项

第三方发行版#

各种第三方为其环境提供 Matplotlib。

Conda 包#

Matplotlib 可通过 *anaconda main channel* 获得

conda install matplotlib

也可以通过 *conda-forge 社区频道* 获得

conda install -c conda-forge matplotlib

Python 发行版#

Matplotlib 是主要 Python 发行版的一部分

Linux 包管理器#

如果您使用的是 Linux 发行版附带的 Python 版本,您可以通过包管理器安装 Matplotlib,例如:

  • Debian / Ubuntu:sudo apt-get install python3-matplotlib

  • Fedora:sudo dnf install python3-matplotlib

  • Red Hat:sudo yum install python3-matplotlib

  • Arch:sudo pacman -S python-matplotlib

安装每日构建版本#

Matplotlib 在 scientific-python-nightly-wheels Anaconda Cloud 组织上提供每日开发的构建 wheel。可以通过指定 scientific-python-nightly-wheels 作为要查询的包索引,使用 pip 安装这些 wheel

python -m pip install \
  --upgrade \
  --pre \
  --index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple \
  --extra-index-url https://pypi.ac.cn/simple \
  matplotlib

从源代码安装#

为开发安装

如果您想为 Matplotlib 做出贡献,或者需要安装最新的开发代码,请按照为开发设置 Matplotlib中的说明进行操作。

以下说明是从源代码安装以供生产使用。通常*不*建议这样做;请尽可能使用预构建的包。请谨慎操作,因为这些说明可能会导致您的构建产生意外行为和/或导致本地测试失败。

在尝试安装 Matplotlib 之前,请安装依赖项

要从 tarball 构建,请从 PyPI 文件页面下载最新的 *tar.gz* 发行文件。

如果您在 Windows 上构建自己的 Matplotlib wheel(或 sdist),请注意,您复制到源代码树中的任何 DLL 也将被打包。

配置构建和行为默认值#

我们提供了一个 meson.options 文件,其中包含可用于自定义构建过程的选项。例如,使用哪个默认后端、是否安装了 Matplotlib 附带的一些可选库等等。这些选项对于那些打包 Matplotlib 的人尤其有用。

库的某些行为默认值的各个方面可以通过以下方式配置:

可以通过rcParams 文件配置默认的绘图外观和行为

依赖项#

如果使用 pipconda 等包管理器安装 Matplotlib,则应自动安装强制依赖项;因此,此列表主要用于参考和故障排除。

常见问题解答#

报告编译问题#

请参阅获取帮助

Matplotlib 编译正常,但使用时没有任何显示#

首先要尝试的是全新安装,看看是否有帮助。如果不是,测试安装的最佳方法是运行脚本,而不是从 Python shell 或集成开发环境(如 IDLE)进行交互操作,后者会增加额外的复杂性。打开 UNIX shell 或 DOS 命令提示符并运行,例如:

python -c "from pylab import *; set_loglevel('debug'); plot(); show()"

这将为您提供有关 Matplotlib 正在加载的后端、版本信息等的更多信息。此时,您可能需要确保您了解 Matplotlib 的配置过程,该过程由 matplotlibrc 配置文件管理,该文件包含其中的说明以及 Matplotlib 后端的概念。

如果您仍然遇到问题,请参阅获取帮助

如何完全删除 Matplotlib#

有时,可以通过全新安装软件包来解决 Matplotlib 的问题。为了完全删除已安装的 Matplotlib

  1. 从您的Matplotlib 配置目录中删除缓存。

  2. 从您的安装目录中删除任何 Matplotlib 目录或 egg。

macOS 注意事项#

macOS 使用哪个 Python?#

Apple 为 macOS 提供了自己的 Python,位于 /usr/bin/python 中,以及自己的 Matplotlib 副本。不幸的是,Apple 当前安装自己的 NumPy、Scipy 和 Matplotlib 副本的方式意味着这些软件包很难升级(请参阅系统 Python 包)。因此,我们强烈建议您安装一个全新的 Python 版本,并将其用作安装 NumPy 和 Matplotlib 等库的基础。安装包含其他有用 Python 软件的 Matplotlib 的一种便捷方法是使用Anaconda Python 科学软件集合,其中包括 Python 本身和各种库;如果您需要该集合中没有的库,您可以使用 *pip* 等标准方法自行安装。有关安装支持,请参阅 Anaconda 网页。

全新 Python 安装的其他选项是来自 python.org 的标准安装程序,或者使用 homebrewmacports 等常规 macOS 包管理系统安装 Python。macOS 上的高级用户可能希望在其系统上安装 homebrew 或 macports 来安装开源软件包,但是完全可以使用这些系统来使用 Python 二进制文件的其他来源,例如 Anaconda 或 Python.org Python。

安装 macOS 二进制 wheel#

如果您使用的是来自 https://pythonlang.cn、Homebrew 或 Macports 的 Python,那么您可以使用标准的 pip 安装程序来安装 Matplotlib 二进制文件,形式为 wheels。

pip 默认安装在 python.org 和 Homebrew Python 中,但在 Macports 上需要手动安装,使用以下命令:

sudo port install py38-pip

一旦安装了 pip,您就可以通过 Terminal.app 命令行安装 Matplotlib 及其所有依赖项:

python3 -m pip install matplotlib

您可能还需要安装 IPython 或 Jupyter notebook (python3 -m pip install ipython notebook)。

检查您的安装#

新版本的 Matplotlib 现在应该在您的 Python “路径” 中。在 Terminal.app 命令行中检查:

python3 -c 'import matplotlib; print(matplotlib.__version__, matplotlib.__file__)'

您应该看到类似以下内容:

3.10.0 /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/matplotlib/__init__.py

其中 3.10.0 是您刚刚安装的 Matplotlib 版本,后面的路径取决于您使用的是 Python.org Python、Homebrew 还是 Macports。如果您看到其他版本,或者收到类似以下的错误:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: No module named matplotlib

那么请运行以下命令检查 Python 二进制文件是否是您期望的版本:

which python3

如果您得到类似 /usr/bin/python... 的结果,那么您使用的是 macOS 自带的 Python,这可能不是您想要的。请尝试关闭并重新启动 Terminal.app,然后再运行检查。如果这没有解决问题,请根据您想要使用的 Python 版本,考虑重新安装 Python.org Python,或者检查您的 Homebrew 或 Macports 设置。请记住,磁盘映像安装程序仅适用于 Python.org Python,并且不会被其他 Python 识别。如果所有这些都失败了,请 告知我们

故障排除#

获取 Matplotlib 版本#

要查找您的 Matplotlib 版本号,请导入它并打印 __version__ 属性:

>>> import matplotlib
>>> matplotlib.__version__
'0.98.0'

matplotlib 安装位置#

您可以通过导入 Matplotlib 并打印 __file__ 属性来查找 Matplotlib 的安装目录:

>>> import matplotlib
>>> matplotlib.__file__
'/home/jdhunter/dev/lib64/python2.5/site-packages/matplotlib/__init__.pyc'

matplotlib 配置和缓存目录位置#

每个用户都有一个 Matplotlib 配置目录,其中可能包含一个 matplotlibrc 文件。要找到您的 matplotlib/ 配置目录,请使用 matplotlib.get_configdir()

>>> import matplotlib as mpl
>>> mpl.get_configdir()
'/home/darren/.config/matplotlib'

在类 Unix 系统上,此目录通常位于您的 HOME 目录下,在 .config/ 目录下。

此外,用户还有一个缓存目录。在类 Unix 系统上,默认情况下它与配置目录分开。要找到您的 .cache/ 目录,请使用 matplotlib.get_cachedir()

>>> import matplotlib as mpl
>>> mpl.get_cachedir()
'/home/darren/.cache/matplotlib'

在 Windows 上,配置目录和缓存目录相同,并且默认位于您的 Documents and SettingsUsers 目录下。

>>> import matplotlib as mpl
>>> mpl.get_configdir()
'C:\\Documents and Settings\\jdhunter\\.matplotlib'
>>> mpl.get_cachedir()
'C:\\Documents and Settings\\jdhunter\\.matplotlib'

如果您想使用不同的配置目录,您可以通过在您的 MPLCONFIGDIR 环境变量中指定位置来实现 - 请参阅 在 Linux 和 macOS 中设置环境变量。请注意,MPLCONFIGDIR 设置了配置目录和缓存目录的位置。