3 回答
我是 OSMnx 的开发者。在这个线程中有越来越多的错误信息和混乱,所以我会给你一个明确的答案。
只需按照文档中的安装说明安装最新版本的 OSMnx:
conda config --prepend channels conda-forge
conda create -n ox --strict-channel-priority osmnx
如果安装旧版本的pyproj + 新版本的OSMnx,或者旧版本的OSMnx + 新版本的pyproj,就会出现如上的包冲突ImportError
。如果您只是 conda install 或 pip install 而不遵循记录的安装说明,则可能会出现相同的问题。所需的依赖版本可以在这里看到。确保您安装了 64 位 python (anaconda/miniconda)。OSMnx 是纯 Python,因此单独安装它是微不足道的,但是,它依赖于 geopandas,它本身具有棘手的安装依赖项。如果您按照文档中的安装说明进行操作,则应该一切顺利且无缝。
总结一下:
- 只需遵循OSMnx 文档中的简单安装说明即可
- 不要只是跑
conda install osmnx
- 不要只是跑
pip install osmnx
- 不要跑
pip install -U pyproj psutil
- 除非您已经安装了所有 OSMnx 的依赖项并确认它们都正常工作,否则根本不要使用 pip(注意:这很重要)
如果您按照文档中的安装说明进行操作,但仍然遇到问题,请在原料中逐步报告您所做的并提供完整的详细信息,以便我们可以重现并快速修复它!
同样,安装说明在文档中。
我遇到了同样的问题,结果发现它不喜欢最新版本的 osmnx (0.11.3)。可能是该版本作为新版本(2020 年 1 月 9 日)不稳定。
我已经通过卸载 osmnx 0.11.3 解决了这个问题
conda uninstall osmnx
并强制安装 osmnx 0.11 版本
pip install osmnx==0.11
对于它的价值,我在安装它时也遇到了麻烦(而且对 Python 来说是全新的)。anaconda (2020.11) 的最新 MacOSX 下载包含 networkx 的 2.3 版(我认为是),我看到这不满足列出的所需依赖项。无论如何,将networkx安装到2.5后,它现在可以正常工作了。谢谢你的包裹!