Python 3.x 拓扑错误:操作';地理差异';无法执行

Python 3.x 拓扑错误:操作';地理差异';无法执行,python-3.x,topology,osmnx,Python 3.x,Topology,Osmnx,我正在尝试一些代码来获取巴塞罗那的建筑足迹: import osmnx as ox import matplotlib.pyplot as plt %matplotlib inline place_name = "Barcelona, Barcelona, Catalonia, Spain" graph = ox.graph_from_place(place_name) buildings = ox.footprints_from_place(place_name) 当我运行代码时,它会产生

我正在尝试一些代码来获取巴塞罗那的建筑足迹:

import osmnx as ox
import matplotlib.pyplot as plt
%matplotlib inline

place_name = "Barcelona, Barcelona, Catalonia, Spain"
graph = ox.graph_from_place(place_name)
buildings = ox.footprints_from_place(place_name)
当我运行代码时,它会产生以下错误消息:

TopologicalError: The operation 'GEOSDifference_r' could not be performed. Likely cause is invalidity of the geometry <shapely.geometry.polygon.Polygon object at 0x00000262079B6550>
TopologicalError:无法执行操作“GEOSDifference\r”。可能的原因是几何无效
我尝试过更新OSMnx版本,但似乎没有问题。
如何解决此问题?

解决方案发布在以下github存储库中:

您应该使用更新的代码更改
footprints.py
文件。 为此,您可以: -在osmnx包粘贴中打开文件,删除其内容并复制更新的内容

-或者创建一个新文件,然后在osmnx包粘贴中替换它