全新Conda安装PyProj后遭遇pyproj无法设置数据库路径问题:_pyproj_global_context_initialize()警告
解决pyproj导入时“unable to set database path”警告的方案
我之前在Windows环境下用conda安装pyproj时也碰到过一模一样的警告,给你几个亲测有效的解决思路:
1. 手动指定PROJ数据库路径
首先可以先确认当前pyproj识别的数据库路径是否正确:
import pyproj print(pyproj.datadir.get_data_dir())
如果输出是None或者明显错误的路径,直接在代码里手动设置正确的路径(替换成你的conda环境实际路径):
import pyproj # 注意路径用正斜杠或者双反斜杠 pyproj.datadir.set_data_dir("C:/Users/你的用户名/Miniconda3/envs/geopandas/Library/share/proj")
conda安装的pyproj默认会把PROJ的数据库文件放在环境的Library/share/proj目录下,这个路径一般不会错。
2. 设置系统环境变量PROJ_LIB
如果不想每次代码里都手动设置,可以直接配置环境变量:
- 临时生效:激活你的geopandas环境后,在命令行输入:
set PROJ_LIB=C:\Users\你的用户名\Miniconda3\envs\geopandas\Library\share\proj
- 永久生效:右键「此电脑」→「属性」→「高级系统设置」→「环境变量」,新建系统变量
PROJ_LIB,值填上面的路径,重启终端和Python环境后生效。
3. 排查版本兼容性问题
有时候版本不匹配也会导致这个问题,你可以尝试卸载当前版本,安装一组稳定兼容的pyproj和PROJ版本:
conda uninstall -y pyproj conda install pyproj==3.3.1 proj==9.1.0
这个版本组合在Windows 10 + Python 3.9的环境下是比较稳定的。
补充说明
这个警告本质是pyproj无法自动找到PROJ的空间参考数据库文件,Windows系统下conda的环境变量配置偶尔会有延迟或者路径识别的小问题,上面的方法基本都能解决。
内容的提问来源于stack exchange,提问作者four-eyes
相关产品推荐
相关产品推荐

