今天教大家用pyecharts制作北京市公交线路动态图,这应该是全网唯一一篇能正常运行的教程

一、获取百度秘钥

首先,本项目需要引用百度地图api,所以需要先注册获取百度开放平台秘钥,地址为:

http://lbsyun.baidu.com/apiconsole/key#

有账号的直接登录,没账号的先注册一下再登录,登录完成后,依次点击控制台-应用管理-我的应用-创建应用:

访问应用(AK)下即是我们这次所需的秘钥

二、整理公交车地理数据

这个公交车地理数据着实有点坑,echarts官方给的数据长这样:

看起来好像密码,真让人头大

只好硬着头皮去研究一下官方代码:

$.getJSON(uploadedDataURL, function(data) {var hStep = 300 / (data.length - 1);var busLines = [].concat.apply([], data.map(function (busLine, idx) {var prevPt;var points = [];for (var i = 0; i < busLine.length; i += 2) {var pt = [busLine[i], busLine[i + 1]];if (i > 0) {pt = [prevPt[0] + pt[0],prevPt[1] + pt[1]];}prevPt = pt;points.push([pt[0] / 1e4, pt[1] / 1e4]);}return {coords: points,lineStyle: {normal: {color: echarts.color.modifyHSL('#5A94DF', Math.round(hStep * idx))}}}

这是一段java代码,如果看不懂就不要看了,大致意思是把数据都除以10000,然后列表奇数位依次相加、偶数位依次相加,两两一组即为各个公交站点地理坐标,每个列表代表1个线路。

python实现以上过程,代码如下:

import json
with open('1.json','r') as f:datas=json.load(f)
result=[]
for data in datas:data = [float(i / 10000) for i in data]a=[]for i in range(2,len(data),2):data[i]=data[i-2]+data[i]data[i+1] = data[i - 1] + data[i+1]a.append([data[i],data[i+1]])result.append(a)

感觉还是python的代码要少一些

码字不易废话两句:有需要python学习资料的或者有技术问题交流 “点击” 即可

三、画图

这里给大家提供两种方式

1.带地图背景的

BAIDU_MAP_AK = "输入你自己的秘钥"c = (BMap(init_opts=opts.InitOpts(width="1200px", height="800px")).add_schema(baidu_ak=BAIDU_MAP_AK,center=[116.40, 40.04],zoom=10,is_roam=True,).add("",type_="lines",is_polyline=True,data_pair=result,linestyle_opts=opts.LineStyleOpts(opacity=0.2, width=0.5,color='red'),# 如果不是最新版本的话可以注释下面的参数(效果差距不大)progressive=200,progressive_threshold=500,)
)
c.render_notebook()

2.不带地图背景的

BAIDU_MAP_AK = "输入你自己的秘钥"c = (BMap(init_opts=opts.InitOpts(width="1200px", height="800px")).add_schema(baidu_ak=BAIDU_MAP_AK,center=[116.40, 40.04],zoom=10,is_roam=True,map_style={"styleJson": [{"featureType": "water","elementType": "all","stylers": {"color": "#031628"},},“省略部分修饰代码”).add("",type_="lines",is_polyline=True,data_pair=result,linestyle_opts=opts.LineStyleOpts(opacity=0.2, width=0.5,color='red'),# 如果不是最新版本的话可以注释下面的参数(效果差距不大)progressive=200,progressive_threshold=500,)
)
c.render_notebook()

以上就是小编今天为大家带来的内容,小编本身就是一名python开发工程师,我自己花了三天时间整理了一套python学习教程,从最基础的python脚本到web开发,爬虫,数据分析,数据可视化,机器学习,等,这些资料有想要的小伙伴 " 点击 " 即可领取

想知道北京的公交线路图吗?用python给你画出来相关推荐

  1. 北京退公交卡:网点排队110分钟 黄牛1分钟搞定 (zz)

    http://www.chinanews.com/sh/2013/10-18/5398118.shtml?f=baidu.com 动物园公交枢纽退卡网点排起了长队.人民网赵艳红摄 //z 2013-1 ...

  2. 可视化例子(6)——geo3D-北京公交线路图(2.5D地图流动)

    一.数据格式 说明:数据中第一二个数是第一个点的经纬度的10000倍,后面数是后面点与第一个点的插值,如第一个点经纬度的10000倍为1164383.401471,第三四个数-11.-13分别是第二个 ...

  3. 北京实时公交查询——Flutter 入坑实战

    项目起因 本人租房在融泽嘉园,每天去上地上班,日常交通路线是乘坐963到软件园广场,再转447/446/982/365到上地七街,但有好几次等963公交就等了30到40分钟(西二旗太堵了),之后我通过 ...

  4. 广州实时公交深圳实时公交东莞实时公交上海实时公交北京实时公交杭州实时公交接口API实现

    全国实时公交查询API接口,查询车来了实时公交接口,公交车到哪,包含了(广州实时公交深圳实时公交东莞实时公交上海实时公交北京实时公交杭州实时公交成都实时公交) 接口功能: 1.公交线路 2.实时公交 ...

  5. 老婆小厂程序媛竟想在北京买房!

    关注公众号[程序员技术专栏],可加入程序员交流群 在一线城市买房,一直以来都是很多在外打拼的程序员的梦想,除了回老家有脸面,更重要的是谁都不想一直在偌大的城市里"漂着". 而这种事 ...

  6. 北京地铁运营线路图,1号线,2号线,5号线,8号线,10号线,13号线,八通线和机场快轨

    北京地铁运营线路图现场照,1号线,2号线,5号线,8号线,10号线,13号线,八通线和机场快轨 前几天在地铁环线上拍摄的.

  7. 北京地铁运营线路图 1号线 2号线 5号线 8号线 10号线 13号线 八通线和机场快轨

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 北京地铁 ...

  8. python画人民大会堂_太震撼了,我用python画出全北京的公交线路动图

    原标题:太震撼了,我用python画出全北京的公交线路动图 今天教大家用pyecharts制作北京市公交线路动态图,这应该是全网唯一一篇能正常运行的教程 一.获取百度秘钥 首先,本项目需要引用百度地图 ...

  9. 北京实时公交查询微信小程序

    目录 实现效果 源代码 实践报告 摘要 概述 题目的背景及研究意义 本系统主要研究内容 系统需求分析 公交路线查询模块需求分析 附近公交站点信息查看模块需求分析 公交实时信息查看模块需求分析 实时公交 ...

  10. 程序员毕业4年想在北京买房被网友嘲讽,晒出存款,网友:很励志

    在北京买房,对于大多数人来说是不现实的,想要在北京买房,即使是偏远的6环外,至少也要准备150万的首付吧,想要攒够这么多钱,怎么也得工作十年八年,而且还要是那种特别优秀的员工才可以. 在我们程序员职场 ...

最新文章

  1. 高精度垃圾分类模型开发与硬件集成
  2. 解析1G到5G技术与设备发展历程
  3. 【 FPGA 】跨时钟域处理以及边沿检测
  4. python argsort排序结果_numpy.argsort()可以对元组或列表进行排序
  5. python删除排序数组中的重复项
  6. 【安全】从mimikatz学习Windows安全之访问控制模型
  7. 2012年总结,2013年的计划
  8. 卸载VS2008后重新安装VS2005的苦难历程
  9. Windows提升进程权限
  10. Jdk1.6 JUC源码解析(12)-ArrayBlockingQueue
  11. mysql odbc 卸载_Linux卸载MySQL
  12. 实验4——Pspice
  13. dev chart 绘制图形
  14. 嵌入式(单片机方向)工程师如何做好定位和职业规划
  15. Revel组件化开发框架
  16. 解决iOS10.3打开APP提示未受信任的企业级开发者
  17. 1156 Sexy Primes (20 分)(质数 模拟
  18. MySQL索引及视图
  19. 阿里云ECS服务器环境搭建(2) —— ubuntu 16.04 安装中文输入法(搜狗输入法)
  20. html制作菱锥旋转,Flash 3d效果精彩实例:制作旋转的三棱锥

热门文章

  1. android 多个sdcard路径,Android中访问sdcard路径的几种方式
  2. VirtualApp hook so及activity回调
  3. 【微信小程序】合法域名校验出错,不在以下合法域名列表中 解决方法
  4. 移动apn接入点哪个快_提升移动联通电信网速
  5. 华为MA5600配置radius认证登陆
  6. Axure RP9 制作下拉式菜单
  7. 服务器7379如何用u盘装系统,怎么用u盘装系统 用U盘装系统安装过程步骤
  8. 双十一不孤单,再过几小时北欧人民也和你一样开始抢单
  9. 7-2 Binomial Queue
  10. 使用 HTML5 控制摄像头摄像和拍照