为开发设置 Matplotlib #

要设置 Matplotlib 进行开发,请按照下列步骤操作:

检索最新版本的代码#

Matplotlib 托管在https://github.com/matplotlib/matplotlib.git

您可以使用该命令检索最新的源代码(有关更多详细信息,请参阅 设置您的 fork

git clone https://github.com/matplotlib/matplotlib.git
git clone [email protected]:matplotlib/matplotlib.git

这需要您提前设置SSH 密钥,但可以避免在每次连接时输入密码。

这会将源代码放在matplotlib当前工作目录下的目录中。切换到这个目录:

cd matplotlib

创建专用环境#

您应该设置一个专用环境,以将您的 Matplotlib 开发与系统上的其他 Python 和 Matplotlib 安装分离。

最简单的方法是使用 Python 的虚拟环境 venvconda

创建一个新的venv环境

python -m venv <file folder location>

并使用以下方法之一激活它

source <file folder location>/bin/activate  # Linux/macOS
<file folder location>\Scripts\activate.bat  # Windows cmd.exe
<file folder location>\Scripts\Activate.ps1  # Windows PowerShell

创建一个新的conda环境

conda env create -f environment.yml

如果您安装了mamba ,您可以在上面的命令中使用mamba而不是。conda

使用激活环境

conda activate mpl-dev

记得在开始使用 Matplotlib 时激活环境。

以可编辑模式安装 Matplotlib #

matplotlib使用命令从目录以可编辑模式安装 Matplotlib

python -m pip install -ve .

“可编辑/开发模式”构建所有内容并将链接放置在您的 Python 环境中,以便 Python 能够从您的开发源目录中导入 Matplotlib。这允许您导入修改后的 Matplotlib 版本,而无需在每次更改后重新安装。请注意,这仅适用于*.py文件。如果您更改 C 扩展源(如果您更改分支也可能发生这种情况),您将不得不重新运行 python -m pip install -ve .

安装额外的开发依赖#

请参阅构建 Matplotlib 的依赖项

安装预提交挂钩(可选)#

运行时,预提交挂钩会自动检查 flake8 和其他样式问题。挂钩在顶级文件中定义。安装挂钩git commit.pre-commit-config.yaml

python -m pip install pre-commit
pre-commit install

钩子也可以手动运行。所有的钩子都可以按照 中列出的顺序.pre-commit-config.yaml,针对完整的代码库运行

pre-commit run --all-files

要手动运行特定的钩子,请使用钩子 ID运行pre-commit run

pre-commit run <hook id> --all-files