首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Osmnx错误:模块'osmnx.elevation‘没有属性'add_node_elevations_raster’

Osmnx错误:模块'osmnx.elevation‘没有属性'add_node_elevations_raster’
EN

Stack Overflow用户
提问于 2021-12-15 02:06:37
回答 2查看 244关注 0票数 2

我正试图从栅格文件中获取高地,并添加到道路网络中。我得到模块'osmnx.elevation‘没有属性'add_node_elevations_raster’错误。

以下笔记本:https://github.com/gboeing/osmnx-examples/blob/main/notebooks/12-node-elevations-edge-grades.ipynb

我的osmnx版本是'0.16.0‘,所有其他功能都在工作。

我不想使用add_node_elevations函数,因为我需要一个google密钥,我正在寻找一个免费的选项。

EN

回答 2

Stack Overflow用户

发布于 2021-12-15 02:35:08

您可以通过查看免费海拔API将其包含到项目中:

据我所研究,其中一些API可以在本地工作,而其他API则可以通过互联网服务。要在项目中使用这些API之一,您必须能够使用Python创建一个HttpGet请求。如果OSMNX库将您排除在这个过程之外,您可以通过遵循this link来学习如何使用programming语言发出HttpGet请求。

例如,根据HttpGet上的位置返回Open Topo Data API请求如下:

代码语言:javascript
复制
import requests
import json

r = requests.get('https://api.opentopodata.org/v1/test-dataset?locations=56,123')

if r.status_code == 200:
   if r.headers['Content-Type'] == 'application/json':
      print(r.text)
      response = r.text.replace("'", '"')
      response = json.loads(response)
      for e in response['results']:
         print('Value of Elevation: ', e['elevation'])

票数 0
EN

Stack Overflow用户

发布于 2021-12-15 06:01:39

您使用的是一个非常旧的OSMnx版本,在该函数存在之前很久就已经发布了。只需升级到包的最新版本(撰写本文时的版本为1.1.2),您就可以继续了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70357657

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档