如何避免在导入底图时出现PROJ_LIB错误?

时间:2019-01-15 15:29:03

标签: matplotlib-basemap

我尝试在spyder中将底图作为以下代码导入

从mpl_toolkits.basemap导入底图

我收到以下错误

回溯(最近通话最近一次):

文件“”,第2行,在     从mpl_toolkits.basemap导入底图

文件“ C:\ Users \ bakhadher \ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ mpl_toolkits \ basemap__init __。py”,第155行,位于     pyproj_datadir = os.environ ['PROJ_LIB']

getitem 中的文件“ C:\ Users \ bakhadher \ AppData \ Local \ Continuum \ anaconda3 \ lib \ os.py”,行678     从None引发KeyError(key)

KeyError:'PROJ_LIB'

3 个答案:

答案 0 :(得分:1)

  1. Reintall软件包(版本问题可能导致它)
conda install -c conda-forge proj4
conda install basemap
  1. 设置环境:setenv PROJ_LIB "$CONDA_PREFIX/share/proj"
  2. 在python脚本中(需要在不同的环境中自定义)
import os
os.environ['PROJ_LIB'] = '/glade/u/home/lixujin/work/anaconda3/envs/AC_tools/share/proj'

答案 1 :(得分:0)

从这里:https://github.com/conda-forge/basemap-feedstock/issues/30#issuecomment-423512069

import os
import conda

conda_file_dir = conda.__file__
conda_dir = conda_file_dir.split('lib')[0]
proj_lib = os.path.join(os.path.join(conda_dir, 'share'), 'proj')
os.environ["PROJ_LIB"] = proj_lib

from mpl_toolkits.basemap import Basemap```

答案 2 :(得分:0)

我有conda,通常我有这个错误,我的解决方法是:

import os
os.environ['PROJ_LIB'] = '/home/YOUR_USER/anaconda3/share/proj'
from mpl_toolkits.basemap import Basemap
import cartopy.crs as crs