我正在尝试安装Basemap,事先我已经在我的Mac上运行了Matplotlib,Python和Numpy的必备版本。要安装Basemap,请按照本网站http://matplotlib.org/basemap/users/installing.html
中的说明进行操作我似乎在这些步骤中取得了很好的进展,直到最后一步是“通过在python提示符下运行mpl_toolkits.basemap导入Basemap来检查你的安装。”我从“mpl_toolkits.basemap import pyproj”中读取“---> 30”的行中获得了“ImportError:无法导入名称pyproj”。
有没有人有任何想法?非常感谢!
答案 0 :(得分:2)
python可以访问已编译的模块。要实现这一点,您应该将模块放入python路径,或者需要将模块的位置添加到PYTHONPATH
环境变量。
要查看python安装路径,可以将这些行写入python shell:
import sys
for path in sys.path:
print(path)
代码将显示python正在寻找模块的路径。
编译c库后,需要转到上层文件夹并按照安装页面中的说法运行python setup.py install
。这会将python模块放入你的一个python路径中。
答案 1 :(得分:0)
我在安装basemap-1.0.7时遇到了同样的问题。 我发现了那个文件 /usr/lib64/python2.6/site-packages/mpl_toolkits/basemap/init.py 有一个对axis-grid1的引用,但是python只列出了axes_grid模块。 所以我将grid1更改为grid,现在底图导入没有错误。
答案 2 :(得分:0)
在OSX上遇到同样的问题,发现很多人认为Basemap在非本机版本的python(对我来说是2.7.12,所有内容都在/ opt / local / Library / Frameworks ...下)工作得很好但是没有本机版本(对我来说2.7.10,其中大部分内容都在/ System / Library / Frameworks下面,而Basemap在/ Library / ...下)。我还注意到在本机版本下已经有一些mpl_tooklit内容,并且没有添加Basemap的权限,你最终会在多个地方使用mpl_toolkit内容。我不确定这是否是具体的问题,但正如我所说,选择使用非原生python的所有内容都是为我解决了这个问题。