1. 为什么需要虚拟环境如果你在Windows上尝试安装PYGMT大概率会遇到各种依赖冲突问题。我见过太多人因为系统里同时存在多个Python版本或不同科学计算包导致PYGMT安装失败或者运行时崩溃。想象一下你花了两天时间调试环境结果画出来的地图全是乱码——这种崩溃感我太熟悉了。虚拟环境就像给你的Python项目准备了一个独立房间。在这个房间里所有家具依赖包的摆放都由你完全控制不会和客厅系统环境里的其他家具打架。特别是对于PYGMT这种依赖GMT、Ghostscript等底层C库的工具隔离环境几乎是必须的。我去年帮一个地质研究所配置环境时他们原有系统里装着五个不同版本的NumPy导致PYGMT根本读不到正确的GMT路径。2. 准备工作安装与配置Conda2.1 选择适合的Anaconda版本首先去Anaconda官网下载最新版注意要选64位安装包现在谁还用32位系统啊。安装时有三个关键选项安装路径建议用默认的C:\Users\你的用户名\anaconda3一定要勾选Add Anaconda to PATH虽然官方不推荐但实测在Windows上更方便注册为默认Python选项可以跳过安装完成后打开开始菜单里的Anaconda Prompt输入conda --version测试是否成功。如果报错可能需要手动添加环境变量把C:\Users\你的用户名\anaconda3\Scripts和C:\Users\你的用户名\anaconda3加入系统PATH。2.2 配置国内镜像加速默认源下载速度慢得像蜗牛我们需要修改.condarc文件。这个文件通常在你的用户目录下比如C:\Users\tjx33没有就新建一个。用记事本打开粘贴以下内容channels: - defaults show_channel_urls: true channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda default_channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2 custom_channels: conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud保存后在Anaconda Prompt里运行conda clean -i清除缓存。现在下载速度应该能提升10倍不止——我上周给团队配置时原本要2小时的安装现在15分钟搞定。3. 创建专属PYGMT环境3.1 新建虚拟环境在Anaconda Prompt执行以下命令建议复制粘贴手打容易出错conda create -n pygmt python3.9这里有几个经验之谈环境名用pygmt方便记忆当然你可以改成自己喜欢的Python版本建议3.8或3.9PYGMT对3.10的支持还不完善如果提示某些包冲突可以加--no-deps参数跳过依赖检查创建完成后用conda activate pygmt激活环境。看到命令行前面出现(pygmt)就说明成功了。这时候再输入python --version应该显示你指定的版本。3.2 安装核心依赖包先升级pip到最新版旧版经常出问题python -m pip install --upgrade pip然后一次性安装所有依赖注意顺序很重要pip install numpy pandas xarray netcdf4 packaging这里有个坑我踩过三次必须先用pip安装这些基础包如果直接用conda安装会导致后续PYGMT报错。等这些包装完再安装PYGMT本体pip install pygmt整个过程大概需要5-10分钟取决于你的网速。如果卡在某个包不动可以按CtrlC中断后重试。4. 验证安装与问题排查4.1 基础功能测试新建一个test.py文件写入以下代码import pygmt fig pygmt.Figure() fig.coast(region[115, 125, 20, 30], projectionM10c, landgray, waterlightblue) fig.savefig(test.png)运行后如果当前目录生成了一张中国东南沿海的地图恭喜你成功了如果报错大概率是以下两种情况4.2 常见错误解决方案错误1GMT库路径问题GMTCLibNotFoundError: Error loading GMT shared library这说明系统找不到GMT的dll文件。解决方法检查是否安装了GMTPYGMT不自带GMT把GMT的bin目录比如C:\programs\gmt6\bin添加到系统PATH重启命令行再试错误2Ghostscript冲突RuntimeError: Failed to determine Ghostscript version这是因为系统里有多个Ghostscript版本。打开控制面板-卸载程序保留最新版即可。我建议用conda统一管理conda install ghostscript -c conda-forge5. 开发环境配置技巧5.1 PyCharm关联虚拟环境打开PyCharm - File - Settings - Python Interpreter点击齿轮图标 - Add - Existing environment找到你的conda环境路径通常是C:\Users\用户名\anaconda3\envs\pygmt\python.exe点击OK后PyCharm会自动识别所有已安装包5.2 Jupyter Notebook使用技巧在虚拟环境中安装jupyterpip install jupyter启动时用这个命令可以自动关联内核python -m ipykernel install --user --name pygmt --display-name PYGMT之后在Notebook里就能直接选择PYGMT环境了。这个小技巧帮我省去了每次手动切换的麻烦。6. 环境维护与备份6.1 导出环境配置定期执行这个命令备份环境conda env export pygmt_env.yaml重装系统时用下面命令一键恢复conda env create -f pygmt_env.yaml6.2 空间清理Conda环境会占用不少空间建议定期清理缓存conda clean --all如果不再需要某个环境conda remove --name pygmt --all记得在执行前确认没有重要项目在使用这个环境。去年我不小心删错了环境导致一周的工作白费——现在我都习惯先用conda list --explicit requirements.txt做双重备份。