參考鏈接添加鏈接描述
我根據這個博客,在自己電腦搜:proj.db文件,結果如下:
在程序開頭指定環境變量,指定上一步查找的路徑即可
原因分析
使用osgeo.osr能夠直接從安裝的GDAL包讀取指定投影類型的信息,在proj.db中存儲了常用的投影系統的參數,因此指定EPSG號就能從proj.db中取到投影信息。
經過排查,我的情況是在anaconda的虛擬環境中同時安裝了GDAL和其他地理空間庫,此時同一環境路徑下可能會產生多個proj.db文件,訪問它的時候程序會無法判斷訪問哪個。因此只需要去查找gdal安裝的那個proj.db在哪裡,在程序中指定環境變量即可解決。
資源管理器中虛擬環境的路徑下查找proj.db,找到上面的幾個結果:
解決方案:
在程序最開始加上下面的代碼
import os
# 對應自己的python包的安裝地址
os.environ['PROJ_LIB'] = r'E:\Users\Lib\site-packages\osgeo\data\proj'
選了含有osgeo文件夾路徑的一個,
List of articles 1 The generic