【大数据】城市公交网络分析与可视化(四):绘制城市公交(地铁)线路图
内容介绍
梗概:爬取公交路径坐标,处理成为符合高德地图Map Lab线形图的格式,通过该平台绘制公交(地铁)线路图等
一些必要的知识点可在该系列博客的其他内容中获得!
1 采用循环法获取线路名
怎么获取一个城市有哪些线路名?遍历前1000路公交。
有遗漏怎么办?想指点区域怎么办?见后文的“读取文本”法。
实际上遍历1000路公交基本能涵盖一个城市大多数公交线路,遗漏的很多也是一些特殊的路线。
代码
import requests
import json
import pandas as pd
import redef Bus_inf(city,line):global bus_num #全局变量,用于计算公交数目try:#获取数据url = 'https://restapi.amap.com/v3/bus/linename?s=rsv3&extensions=all&key=a5b7479db5b24fd68cedcf24f482c156&output=json&city={}&offset=1&keywords={}&platform=JS'.format(city,line)r = requests.get(url).textrt = json.loads(r)#读取当前公交线路主要信息dt = {}dt['line_name'] = rt['buslines'][0]['name'] #公交线路名字dt['polyname'] = rt['buslines'][0]['polyline'] #获取行驶路径bus_num+=1 #有效公交数+1"""整理行车路径格式符合高德地图绘图工具的要求""" b=re.split("[;]",dt['polyname'])res=""for i in range(len(b)):tmp=re.split("[,]",b[i])if len(res)==0:res=res+"["+tmp[0]+","+tmp[1]+"]"else:res=res+",["+tmp[0]+","+tmp[1]+"]"dt['polyname'] =resreturn pd.DataFrame(dt,index=[bus_num]) #下标index为“第几条公交线”except:return pd.DataFrame() #读取数据失败,返空if __name__=="__main__":bus_num=0 #设置全局变量计算公交数目(通常默认就是0)city='苏州' #需要查询公交信息的城市for_num=1000 #遍历的线路数[1路,for_num路],通常公交线路数小于1000,具体可参考8684等网站all_buslines=pd.DataFrame() for i in range(1,for_num+1):all_buslines=pd.concat([all_buslines,Bus_inf(city,str(i)+'路')]) #不加这个'路'可能优先获取地铁print("Bus_info函数遍历{}前{}路公交,有效公交线路数为:{}个的情况下:".format(city,for_num,bus_num))all_buslines.to_csv("{}前{}路公交(有效线路数:{})基本信息.csv".format(city,for_num,bus_num),index=False,encoding='utf-8-sig')
绘制结果欣赏
绘图平台是 高德开放平台|Map Lab
大城市数据量太大(如北京)高德读不了,可以删减一部分,或者分两次读入,但特别的卡…
平均一个城市五分钟出结果吧,什么是一劳永逸?这就叫一劳永逸!
厦门
写这么久的博客第一次知道咋去水印
【大数据】城市公交网络分析与可视化(四):绘制城市公交(地铁)线路图相关推荐
- 【大数据】城市公交网络分析与可视化(六):对比分析不同城市公交的“非直线系数”
内容介绍 梗概:求一个城市的公交的平均(非)直线系数,并结合前面博客所求得的公交线路的平均长度.平均站点数.平均站距,对比分析几个城市的公交路线基本数据. 准备知识 1.什么是"非直线系数& ...
- 【大数据课程设计】城市公交网络分析与可视化(以青岛市为例)
城市公交网络 城市公交网络分析与可视化 数据爬取与处理 公交站点信息爬取 公交线路轨迹爬取 坐标转换 城市公交网络可视化 利用ArcMap实现地图的可视化 利用plotly实现地图可视化 公交路线基本 ...
- 基于大数据的智能网络分析
2018云栖大会深圳峰会弹性计算.网络和CDN专场上,阿里云高级技术专家云州给大家一起探讨了大数据的智能网络分析.通过介绍全球网络的超大规模,进而说明了智能网络齐天的设计必要性,着重详讲解了齐天智能网 ...
- AI、大数据时代,智能安防在智慧城市建设中的发展与应用趋势
佳都新太科技股份有限公司 袁名人 AI.大数据时代,智能安防在智慧城市建设中的发展现状 智慧城市是充分运用信息通信技术(ICT)感知.分析.整合和处理城市核心系统中的各类信息,对城市规划.建设和运营管 ...
- 大数据时代,AV企业如何逐鹿智慧城市?
自2008年"智慧地球"概念提出后,"智慧城市"发展模式逐渐风靡全球,并成为世界范围内经济增长的重要驱动.据世界银行测算,一个100万人口以上的智慧城市建成,在 ...
- Py之pyecharts:基于大数据对人工智能进行各种可视化图表分析
pyecharts:基于大数据对人工智能进行各种可视化图表分析 目录 1. Bar(柱状图/条形图) 2 EffectScatter(带有涟漪特效动画的散点图) 3 .Funnel(漏斗图) 4.Ga ...
- 战疫之下的“大数据+网格化”管理,谁在颠覆“智能城市”的路径?
文 | 陈选滨 来源丨智能相对论(ID:aixdlun) 如果说过去"智能城市"的重点仍放在顶层设计架构,那么在此次防疫工作的紧急需求下,这一项目便不得不以另一种更快的方式下沉,落 ...
- 基于大数据的动漫影视可视化分析系统
温馨提示:文末有 CSDN 平台官方提供的学长 Wechat / QQ 名片 :) 1. 项目简介 本动漫分析系统开发语言为Python,并进行数据清洗,数据处理,并最后利用可视化技术进行动漫数据分析 ...
- 什么是大数据4v 指的是哪四个
什么是大数据4v 指的是哪四个 [导语]什么是大数据4v?大数据4v是指volume(大量).velocity(高速).variety(多样).value(价值),也是大数据工程师需要掌握的,据职业社 ...
- 一口气实现交通大数据爬取与Python可视化(含数据分享)
今天的文章呢主要目的不是爬虫,而是爬虫的同时顺便实现实时可视化.上次爬摩拜单车数据的文章使用的是传统的ArcGIS进行自定义可视化,硬核 | Python多线程爬取摩拜单车数据与ArcGIS可视化,今 ...
最新文章
- Oracle中分页查询语句
- 【Android NDK 开发】JNI 动态注册 ( 动态注册流程 | JNI_OnLoad 方法 | JNINativeMethod 结构体 | GetEnv | RegisterNatives )
- 树和森林转二叉树,二叉树无右孩子(或右指针域为空)的结点个数计算思路
- 30道最常问的Java基础面试题
- icloud连接服务器时出现问题_ios13 ipad/iphone与windows 连接传输文件显示连接服务器用户或密码无效解决方法...
- python的格式_python 代码格式
- 面试官爱问的10大经典排序算法,20+张图来搞定
- 高性能apache服务器配置大并发教程MPM模块配置
- java的Timer定时器
- iOS开发计算工程里面的代码行数
- 如何提升自己的网站打开速度
- (1/2) sharex录制屏幕没有声音,升级高版本的sharex
- 向NCBI上传16S rDNA数据的操作详解
- matlab绘制法线信息、矢量场
- 世界各国的12个王朝
- 一个人有没有领导力,就看这3点
- MRM:基于ISMRM研究与欧洲痴呆研究动脉自旋灌注成像临床应用的补充建议
- 心路历程(一)--天圆地方的时候
- 微星主板刷新BIOS指南
- 索泰新款 ZBox 怎么样
热门文章
- UVa 10105 - Polynomial Coefficients
- 基于Laravel的会计财务系统
- Jenkins怎么发邮件,自动化大老手把手教你
- WebRTC系列补充--native音量控制level
- 使用JSONRPC操作附带token(secret)的aria2
- maltab datenum函数与正则表达式巧用:逐日数据转为逐月数据、日序转月序
- 剪辑视频时PR播放卡顿不连贯|如何修复Premiere软件中播放太卡问题
- shopex PHP Notice,SHOPEX 4.8.5 最新注入漏洞后台拿SHELL
- Create React App无eject配置(react-app-rewired 和 customize-cra)
- H5页面自定义标题、链接、描述、图片分享到微信朋友、朋友圈、QQ和QQ空间