用于构建等时线的小型python模块
pychrone的Python项目详细描述
python 3模块,用于从点生成等时线
历史记录
0.0.2-添加了几种类型的等时线生成:步行、驾驶或骑自行车。
0.0.1-初始版本,仅支持行走等时线。
如何安装
您可以使用pip:
安装pychrone。pip install -U pychrone
或通过来源:
python setup.py install
如果安装了多个python版本,则可能会相应地使用pip3和python3命令。
功能
该模块从定义纬度的设定点和定义时间的长震级生成isochrone。
步行路线和坐标的所有详细信息都来自OpenStreetMap,因此您需要一个Internet连接才能使用此模块。
此外,模块还将尝试用α-shape algorithm优化等时线形状,使其更自然和干净。
模块的主函数接受以下参数:
create_等时线(longtitude,latitude,speed=4.5,output=“geojson”,route=“walk”)
用法:
在这个小例子中,pychrone将以geojson格式从坐标点(37.847591,55.920284)返回5分钟步行等时线,假设步行速度为4.5公里/小时:
IN:
frompychroneimportCreate_isochroneCreate_isochrone(37.847591,55.920284,5)
OUT:
{"coordinates":[[[37.8460729,55.9174363],[37.8464059,55.9175894],[37.847672,55.9178994],[37.8485452,55.9179112],[37.8489915,55.9179172],[37.8490785,55.9179534],[37.8502528,55.918252],[37.8508537,55.9190215],[37.8521326,55.9193121],[37.8523401,55.9195966],[37.8523826,55.9196535],[37.8526471,55.920433],[37.8527015,55.9206193],[37.852584,55.9210867],[37.8512857,55.9218685],[37.8500913,55.9216824],[37.8481064,55.9218883],[37.8480311,55.9218827],[37.8464856,55.9216235],[37.8458339,55.9220129],[37.8452347,55.9223078],[37.8451153,55.9223076],[37.843753,55.9214498],[37.8434385,55.9211565],[37.8432352,55.9210091],[37.843344,55.9201537],[37.8436392,55.9200188],[37.8442215,55.9195563],[37.8445491,55.9189478],[37.8453806,55.9179848],[37.8458505,55.9173872],[37.8460729,55.9174363]]],"type":"Polygon"}
在这里,我们将以geojson格式从同一点建立一个5分钟的自行车等时线,假设自行车速度为15公里/小时:
IN:
frompychroneimportCreate_isochroneCreate_isochrone(37.847591,55.920284,5,speed=15,route='bike')
OUT:
{"coordinates":[[[37.8567192,55.9159054],[37.8566902,55.917482],[37.8574327,55.9183582],[37.8596827,55.9179265],[37.8606264,55.9174921],[37.8607145,55.9174898],[37.8616878,55.9182527],[37.8623098,55.9184031],[37.8623315,55.9186923],[37.8623347,55.9187348],[37.8617334,55.9187584],[37.8601876,55.9216012],[37.8601928,55.9216375],[37.8625041,55.9234816],[37.8606823,55.9239551],[37.8602133,55.9240344],[37.859944,55.9240621],[37.8596538,55.9240835],[37.858323,55.9265212],[37.858095,55.9258876],[37.8579296,55.9254856],[37.8577715,55.9252287],[37.857535,55.9249517],[37.8571648,55.9246052],[37.8570523,55.9244923],[37.8567998,55.9242646],[37.8564721,55.9239992],[37.8551838,55.9236002],[37.8550675,55.9236167],[37.854535,55.9236923],[37.8539227,55.9237794],[37.8537368,55.9238044],[37.8517414,55.9236685],[37.8506852,55.9233489],[37.8503534,55.9223657],[37.8481771,55.9215311],[37.8461656,55.9213583],[37.8453504,55.9211411],[37.8434385,55.9211565],[37.8424404,55.922531],[37.8414824,55.9219328],[37.839682,55.9204985],[37.8381736,55.919545],[37.8379558,55.9195288],[37.8378175,55.9195185],[37.8368864,55.9194489],[37.8355386,55.9177032],[37.8349836,55.9175541],[37.8351224,55.9173399],[37.8353122,55.91707],[37.8354487,55.9168568],[37.8357087,55.9170776],[37.8382045,55.9171129],[37.8392138,55.9171165],[37.8404943,55.9171611],[37.8418891,55.9172097],[37.8435035,55.915587],[37.8435064,55.9154623],[37.841976,55.9137454],[37.8421039,55.9136196],[37.842337,55.9138113],[37.8445747,55.9138635],[37.8453206,55.9139934],[37.8453969,55.9139946],[37.8456471,55.9139985],[37.8458805,55.9140022],[37.8461503,55.9140065],[37.8466495,55.9139142],[37.8470988,55.9138738],[37.8472903,55.9138372],[37.8485149,55.9145846],[37.8494446,55.9152114],[37.8494888,55.9152412],[37.850287,55.9162542],[37.8526657,55.9159628],[37.8546403,55.9159654],[37.8549614,55.9159579],[37.8565237,55.9159109],[37.8566544,55.915907],[37.8567192,55.9159054]]],"type":"Polygon"}