Mar*_*tka 2 python matplotlib-basemap
我对 python 很陌生,我正在尝试导入basemap到 Spyder 3.6。我conda install basemap在 Anadonda Prompt 和 Spyder 中使用过import basemap,但出现错误
File "<ipython-input-1-d9467465a3b6>", line 1, in <module>
from mpl_toolkits.basemap import Basemap
File "D:\Anaconda_Python\lib\site-packages\mpl_toolkits\basemap\__init__.py", line 155, in <module>
pyproj_datadir = os.environ['PROJ_LIB']
File "D:\Anaconda_Python\lib\os.py", line 678, in __getitem__
raise KeyError(key) from None
KeyError: 'PROJ_LIB'
Run Code Online (Sandbox Code Playgroud)
我看过类似的问题,但它对我不起作用:
FileNotFoundError: [Errno 2] No such file or directory: 'D:\\Anaconda_Python\\share\\proj\\epsg'小智 5
这似乎是一个普遍的问题。问题在于 Basemap 没有正确定位 Proj4 的“epsg”文件所在的位置。这可以通过首先找到文件“epsg”所在的位置然后使用一些代码添加路径本身来轻松解决。
它应该是这样的(这是我所在的位置,根据您下载 Anaconda 的环境名称和位置而有所不同)
C:\Users\XXX\Anaconda3\envs\env\Library\share
查看您的错误消息,我相信您的错误消息应该位于“D:\Anaconda_Python\share”中的某个位置
然后在导入 Basemap 之前插入以下代码,它应该可以工作。
import os
os.environ["PROJ_LIB"] = r'C:\Users\XXX\Anaconda3\envs\env\Library\share (location of epsg)'
from mpl_toolkits.basemap import Basemap
Run Code Online (Sandbox Code Playgroud)