可视化篇:Echarts实现区域人群密度实时监控

perface
一些工作经验的整理,欢迎留言探讨。
Echarts2的时候曾试过在百度地图背景上加timeline属性,但发现不支持遂以失败告终,e3后来的bmap.js扩展,使得之前的设想得以实现。
下面是《可视化篇:效果图》中第10、11张的实现说明


其中:
1.下图展示数据均为模拟数据
2.使用的echarts版本为3.2.3,关于如何引入百度地图,参考《Echarts3.0引入百度地图》
3.此部分为热力图实时变化,可以通过扩展实现多区域实时变化,echarts3支持十万级别数据渲染,但是会有点慢


下面是一些实现细节:

1. 关于人群密度变化的思考

现阶段对一些景点区域,以及一些人流量相对较大的区域的监控预警是十分重要的一种事故预防措施,除了一些冷冰冰的数字呈现,我们仍可以通过一些相对醒目的手法来提高预警技巧,比如将要讲的人群密度热力分布,通过加上时间轴,以及地图渲染,我们可以清晰地了解在什么时间,什么地点,什么情况,当然百度地图一直就有这种功能服务,现在我们只是把他拿出来讲具体如何实现,仅此而已。


2. option 设置

在含有timeline属性的echarts图表中,有两个关键的实现基础,baseOption 和 options.

1. option.baseOption

option.baseOption,顾名思义就是图标的一些基础选项,由于在timeline属性环境下,option必须分成两家,1家baseOption承载之前option的属性设置,另一家options则对应到timeline属性下各个时间段
那么baseOption下都应该怎么设置呢?

baseOption1

图中任何属性都是可以写在baseOption里,图为echarts3配置文档。
如本篇例子中的代码:

    baseOption: {
        title:{
            text: "区域人群实时密度监控--花城广场",
            link: 'http://blog.csdn.net/yc_1993',
            subtext: "数据模拟,仅为测试",
            left: 'center',
            top: 20,
            textStyle:{
                color: 'red',
                fontSize: 20
            },
            subtextStyle:{
                color: 'white',
                fontSize: 16
            }
        },
        timeline: {
            autoPlay:true,
            data: ["7:00","8:00","9:00","10:00","11:00","12:00","13:00","14:00","15:00","16:00","17:00"],
            axisType: 'category',
            padding: [5,5,5,5],
            playInterval:1500,
            lineStyle:{color:'white'},
            label:{
                normal:{
                    textStyle:{
                        color: 'white',
                        fontSize: 13
                    }
                }
            }
        },
        bmap: {
        center: [113.331788,23.124235],
        zoom: 16,
        roam: true,
        mapStyle: {
                       styleJson: [
          {
                    'featureType': 'land',     //调整土地颜色
                    'elementType': 'geometry',
                    'stylers': {
                              'color': '#081734'
                    }
          },
          {
                    'featureType': 'building',   //调整建筑物颜色
                    'elementType': 'geometry',
                    'stylers': {
                              'color': '#04406F'
                    }
          },
         {
                    'featureType': 'building',   //调整建筑物标签是否可视
                    'elementType': 'labels',
                    'stylers': {
                    'visibility': 'off'
                    }
          },
          {
                    'featureType': 'highway',     //调整高速道路颜色
                    'elementType': 'geometry',
                    'stylers': {
                    'color': '#015B99'
                    }
          },
          {
                    'featureType': 'highway',    //调整高速名字是否可视
                    'elementType': 'labels',
                    'stylers': {
                    'visibility': 'off'
                    }
          },
          {
                    'featureType': 'arterial',   //调整一些干道颜色
                    'elementType': 'geometry',
                    'stylers': {
                    'color':'#003051'
                    }
          },
          {
                    'featureType': 'arterial',
                    'elementType': 'labels',
                    'stylers': {
                    'visibility': 'off'
                    }
          },
          {
                    'featureType': 'green',
                    'elementType': 'geometry',
                    'stylers': {
                    'visibility': 'off'
                    }
          },
          {
                    'featureType': 'water',
                    'elementType': 'geometry',
                    'stylers': {
                              'color': '#044161'
                    }
          },
          {
                    'featureType': 'subway',    //调整地铁颜色
                    'elementType': 'geometry.stroke',
                    'stylers': {
                    'color': '#003051'
                    }
          },
          {
                    'featureType': 'subway',
                    'elementType': 'labels',
                    'stylers': {
                    'visibility': 'off'
                    }
          },
          {
                    'featureType': 'railway'
  • 12
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 100
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 100
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值