安装#

安装正式版本#

Matplotlib 版本可在 PyPI 上作为 macOS、Windows 和 Linux 的轮子包获得。使用 pip 进行安装。

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

如果此命令导致 Matplotlib 从源代码编译,并且编译遇到问题,则可以添加 --prefer-binary 以选择针对其有针对你的操作系统和 Python 预编译的轮子的最新版本的 Matplotlib。

注意

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

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

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

第三方发行版#

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

Conda 包#

Matplotlib 可通过anaconda 主通道获得

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 组织 上提供夜间开发构建轮子。这些轮子可以通过指定 scientific-python-nightly-wheels 作为要查询的包索引来使用 pip 安装

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 发行文件。

我们提供了一个 mplsetup.cfg 文件,你可以使用它来定制构建过程。例如,使用哪个默认后端,是否安装 Matplotlib 附带的一些可选库,等等。此文件对那些打包 Matplotlib 的人来说尤其有用。

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

配置构建和行为默认值#

构建和安装过程的各个方面以及库的一些行为默认值可以通过以下方式配置

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

依赖项#

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

常见问题#

报告编译问题#

请参阅 获取帮助

Matplotlib 编译正常,但在我使用它时什么也没有显示#

要尝试的第一件事是 干净安装,看看是否有帮助。如果没有,测试你的安装的最佳方法是运行一个脚本,而不是从 python shell 或 IDLE 等集成开发环境中进行交互式工作,这些环境增加了额外的复杂性。打开一个 UNIX shell 或一个 DOS 命令提示符,例如运行

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

这将为你提供有关 Matplotlib 正在加载的后端、版本信息等的其他信息。此时,你可能希望确保你理解 Matplotlib 的 配置 过程,该过程由包含内部指令和 Matplotlib 后端概念的 matplotlibrc 配置文件控制。

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

如何彻底删除 Matplotlib#

有时,可以通过重新安装包来解决 Matplotlib 问题。要彻底删除已安装的 Matplotlib

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

  2. 安装目录中删除所有 Matplotlib 目录或 egg。

macOS 注释#

macOS 使用哪个 Python?#

Apple 在 /usr/bin/python 中随 macOS 附带其自己的 Python 和 Matplotlib 副本。遗憾的是,Apple 当前安装其自己的 NumPy、Scipy 和 Matplotlib 副本的方式意味着这些包很难升级(请参阅系统 Python 包)。因此,我们强烈建议您安装新版本的 Python,并将其用作安装 NumPy 和 Matplotlib 等库的基础。使用Anaconda Python 科学软件集合是安装 Matplotlib 和其他有用 Python 软件的便捷方式,其中包括 Python 本身和大量库;如果您需要集合中没有的库,您可以使用标准方法(如pip)自行安装。请参阅 Anaconda 网页以获取安装支持。

全新 Python 安装的其他选项是从python.org获取标准安装程序,或使用通用 macOS 包管理系统(如homebrewmacports)安装 Python。macOS 上的高级用户可能希望在他们的系统上使用 homebrew 或 macports 中的一个来安装开源软件包,但完全可以使用这些系统与其他 Python 二进制文件来源(如 Anaconda 或 Python.org Python)一起使用。

安装 macOS 二进制轮#

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

pip 默认安装在 python.org 和 Homebrew Python 中,但需要在 Macports 上手动安装

sudo port install py38-pip

安装 pip 后,您可以通过 Terminal.app 命令行安装 Matplotlib 及其所有依赖项

python3 -m pip install matplotlib

您可能还想安装 IPython 或 Jupyter 笔记本 (python3 -m pip install ipython notebook)。

检查您的安装#

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

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

您应该看到类似内容

3.6.0 /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/matplotlib/__init__.py

其中 3.6.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 安装位置#

您可以通过导入它并打印 __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 设置了配置文件目录和缓存目录的位置。