底图导致python中止

时间:2015-08-17 15:56:39

标签: python numpy matplotlib matplotlib-basemap

我需要将一些数据点映射到地图上。我为python下载了底图模块来执行此操作。每次我尝试制作地图时,都会收到以下错误消息。我用于此的代码如下。我该如何解决这个问题?

我使用的地理版本是3.4.2,我使用的底图版本是1.0.7。我使用的python版本是2.7。我使用的gdal版本是1.11.2。

错误消息:

Assertion failed: (0), function query, file AbstractSTRtree.cpp, line 285.
aborted

代码:

from mpl_toolkits.basemap import Basemap
import numpy as np
import matplotlib.pyplot as plot

def main():
    map = Basemap(projection = 'cyl', llcrnrlon= -100, llcrnrlat = -18, urcrnrlon =-80, urcrnrlat = 31)
    map.drawcoastlines(linewidth = .01)
    map.drawmapboundary(fill_color='aqua')
    plot.show()
main()

1 个答案:

答案 0 :(得分:3)

这个错误让我疯了。还有很多其他SE问题和网站存在类似问题:123,但他们都建议先导入mpl_toolkits.Basemap shapely.geometry。问题是,这是导致我/和@K.Shores问题的导入顺序。如果我反转导入顺序(先成型),我不会遇到问题。

我认为我找到了一个更令人满意的解决方案here。显然,Homebrew GEOS库与预编译的形状轮捆绑在一起的库之间存在冲突。因此,要解决问题,请执行以下操作:

$ pip uninstall shapely
$ pip install --no-use-wheel shapely