一、数据格式

说明:数据中第一二个数是第一个点的经纬度的10000倍,后面数是后面点与第一个点的插值,如第一个点经纬度的10000倍为1164383、401471,第三四个数-11、-13分别是第二个点经纬度与第一个点经纬度的差值,后面类比;

若想用此代码,则可用 python 脚本将数据处理成上面类似样式。

通过下面代码处理成正常的经纬度坐标

 $.getJSON('data/lines-bus.json', function (data) {var hStep = 300 / (data.length - 1);var busLines = 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],   //数据中第一二个数是第一个点的经纬度的10000倍,后面数是后面点与第一个点的插值prevPt[1] + pt[1]];}prevPt = pt;points.push([pt[0] / 1e4, pt[1] / 1e4]);  //除以10000得到实际经纬度坐标}return {coords: points,lineStyle: {color: echarts.color.modifyHSL('#5A94DF', Math.round(hStep * idx))   //给每条线赋予颜色}};});
});

二、完整代码

<!doctype html>
<html><head><meta charset="utf-8"><title>geo3D-北京公交线路图</title><meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no"><meta name="apple-mobile-web-app-capable" content="yes"> <!-- Fullscreen Landscape on iOS --><link rel="stylesheet" href="./common.css"></head><body><div id="main"></div><script src="../node_modules/echarts/dist/echarts.js"></script><script src="../node_modules/echarts/map/js/province/beijing.js"></script><script src="../node_modules/echarts/theme/dark.js"></script><script src="../dist/echarts-gl.js"></script><script src="lib/jquery.min.js"></script><script src="js/commonUI.js"></script><script>var chart = echarts.init(document.getElementById('main'));$.getJSON('data/lines-bus.json', function (data) {var hStep = 300 / (data.length - 1);var busLines = 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],   //数据中第一二个数是第一个点的经纬度的10000倍,后面数是后面点与第一个点的插值prevPt[1] + pt[1]];}prevPt = pt;points.push([pt[0] / 1e4, pt[1] / 1e4]);  //除以10000得到实际经纬度坐标}return {coords: points,lineStyle: {color: echarts.color.modifyHSL('#5A94DF', Math.round(hStep * idx))   //给每条线赋予颜色}};});chart.setOption({geo3D: {map: '北京',shading: 'realistic',environment: '#111',silent: true,realisticMaterial: {roughness: 0.8,metalness: 0},postEffect: {enable: true},groundPlane: {show: true,color: '#000'},light: {main: {intensity: 0,shadow: true,shadowQuality: 'high',alpha: 30},ambient: {intensity: 0.2}},viewControl: {distance: 50},itemStyle: {color: '#333',borderColor: '#fff'},regionHeight: 0.5},series: [{type: 'lines3D',coordinateSystem: 'geo3D',effect: {show: true,constantSpeed: 2,trailWidth: 2,trailLength: 0.4,// trailColor: [1, 1, 5],trailOpacity: 0.5},blendMode: 'lighter',polyline: true,lineStyle: {width: 0.1,color: 'rgb(200, 80, 40)',opacity: 0.},distanceToGeo3D: [0, 1],data: busLines}]});window.onresize = chart.resize;window.addEventListener('keydown', function () {chart.dispatchAction({type: 'lines3DToggleEffect',seriesIndex: 0});});});</script></body>
</html>

结果图:

若将第 39、40、41 行代码注释掉:

return {coords: points,//lineStyle: {//  color: echarts.color.modifyHSL('#5A94DF', Math.round(hStep * idx))   //给每条线赋予颜色//}
};

则得到的结果图为:

可视化例子(6)——geo3D-北京公交线路图(2.5D地图流动)相关推荐

  1. 北京地铁线路图纯算法附带求极权值(原创) 性能提升版

    先上一张大家都看过而且熟悉的北京地铁线路图: 其中本人由于时间时间问题所以就写入了:昌平线,1,2,4,5,6,8,10,13共9条线路图: 接下来我说说我的思路 我的思路是这样的: 首先定义变量b, ...

  2. 启迪公交上云助力北京公交二维码乘车业务系统顺利上线

    公司介绍 我们公司是国内领先的公交出行服务提供商,通过承接公交信息化和智慧化项目建设,应用最先进的互联网商业模式,将"人.车.线.站"的大数据资源及相关配套资源进行商业化转换,实现 ...

  3. 北京公交公开招标思路

    ■本报记者周庆文文/图 "我们要让百姓知道招标背后的故事,让百姓了解更深层次的内容."日前,北京公共交通控股(集团)有限公司召开了一个媒体见面会.由于见面会恰好在北京公交集团200 ...

  4. 北京公交将标配智能辅助驾驶,具备行人防撞、车道偏离预警

    允中 发自 凹非寺  量子位 报道 | 公众号 QbitAI 人不行就上AI. 前段时间,公交相关的消息一波接一波,受到前所未有的关注. 但好消息是,AI福利也将至. 据新华社报道,北京公交集团计划在 ...

  5. 北京公交“十三五”将通过大数据实现线路优化

    北京公交集团规划发展部经理季朗超说,集团目前已在所有公交车上安装了GPS,通过数据共享,可以通过手机APP进行公交查询,未来将更多基于"互联网+"提升公交服务. 线路设计方面,将利 ...

  6. 北京地铁线路图(最新-非常实用)

    北京地铁线路图: http://map.baidu.com/subways/index.html?c=beijing

  7. Scrapy爬取北京公交并保存MYSQL数据库实例

    前言就不过多赘述了,大家只要把scrapy的基本了解之后就可以完成这个项目. 一:创建scrapy项目: 打开控制台输入 scrapy startproject beibus(这个是项目名称,可以自己 ...

  8. 北京公交一卡通刷卡详情查询的网址及查询方法

    北京公交一卡通刷卡详情查询的网址及查询方法 http://www.bjsuperpass.com/ http://www.bmac.com.cn/ 两个网址是一样的.但是第二个的域名解析经常不开.第一 ...

  9. 北京公交一卡通可打公用电话 节省60%话费

    除了乘公交地铁.到超市购物,公交一卡通又有了新功能.北京网通日前宣布,已在北京城区大批量换装"一卡通公用电话".为了推广使用一卡通,政府相关部门还批准了优惠政策,市话每分钟通话费为 ...

最新文章

  1. FEMS:广东生态所孙蔚旻组利用DNA-SIP宏基因组揭示锑氧化微生物及其代谢途径...
  2. 微博登录界面的PHP代码,关于接入微博登录的代码实现
  3. spring中的bean属性相关访问、编辑、转换
  4. 微软二合一能装python吗_微软再出神器,这次终于对Python下手了!
  5. 根据checkbox组的选中状态给list数组赋值
  6. 左神算法:未排序正数数组中累加和为给定值的最长子数组长度(Java版)
  7. android listview中item通过viewpager实现
  8. 动态规划 —— 线性 DP —— 序列问题
  9. python-packaging 命令行脚本
  10. bootstrap表格遍历_BootStrap实现带有增删改查功能的表格(DEMO详解)
  11. 第八届蓝桥杯java b组第十题
  12. J2EE DAO模式解析(二)
  13. acm运行时错误_计人即讯|ACM纳新赛
  14. CI/CD到底是什么?看完就能很快理解
  15. vue中用canvas 画一个六边形 类似蜂窝形的功能导航主菜单
  16. 计算机集成牌照,车牌识别+证件识别嵌入式识别系统集成
  17. 数据仓库基础(通俗易懂,好文)数仓概念
  18. 《软技能-代码之外的生存指南》————第二篇 自我营销
  19. [Android系统]android7.1 修改系统默认输入法
  20. ctfshow MengXIn 下(pearcmd.php妙用条件竞争简单密码简单misc)

热门文章

  1. 本地局域网内linux为nginx搭建https
  2. FX3开发入门系列EZ-USB FX3 Software Development Kit
  3. 联咏平台(Novatek) | RTL8188FU WIFI驱动移植
  4. 2017年背景下的SSD选购技巧有哪些变化?
  5. 通电后第一次开机黑屏_每天第一次开机黑屏,重启后正常
  6. 步进电机的匀加速程序
  7. CSS 相对|绝对(relative/absolute)定位
  8. linux centos7 完整邮件服务器搭建及调用_2018_lcf
  9. spring data rest 不隐藏主键id
  10. 华为机试:找到比自己强的人数