charts地图展示及属性分析

Echarts,一个效果非常棒的可视化库,可以生产各种图表,动态展示,附上官方网址:http://www.echartsjs.com/index.html

之前带本科实习时有同学用过,狗哥的博客也用这个展示他的旅游足迹,所以在这次山西项目里我也拿来试了一下。类似于echarts这种库,最好的学习方法就是按照官网的demo来做,所以我先找了一个符合我要求的demo将其实现,然后再分别掌握其中的重要属性,最后按照自己的需求进行改动。

一、地图展示

我看的主要是以下两种:都在series里,位置在侧栏标出来了

加2643804531乐乐老师为好友,她会发以往资料给您,及时发课题给您哦

611481448,这是我们的群号,如果您有什么问题可以在群内咨询


二、属性设置

属性是以键值对的形式调用的,大部分都很简单,和样式有关,一看就知道是干什么的,需要重点关注的是以下几个:

tooltip:浮动提示框组件

legend:图例

series:系列列表,每个系列通过type决定自己的图表类型

其中,series里的label和tooltrip中都含有formatter属性,这两个是调整地图所展示的点信息的关键,一定要理清楚formatter属性中的参数含义 ,具体参见官方文档的详细介绍。注意分清 系列名 / 数据名 / 数据值 这三者对应的内容


这是我调整之后的效果:左边是label,右边是tooltip,其他的内容写在代码的注释里了,可以往下看

有不会的一定记得查阅官方文档,里面有不同属性非常详细的介绍

 内容我已经上传到github了,欢迎大家查看和下载,觉得不错的话可以关注我~

 地址:https://github.com/santana2000/sxWebGIS/tree/master/poi

三、代码实现

varmyChart = echarts.init(document.getElementById('sxmap'));// 注意引入版本// 注意不同版本使用差别vardata = [//元素为对象的数组{name: '长治', value: 41},

    {name: '大同', value: 58},

    {name: '临汾', value: 47},

    {name: '太原', value: 39},

    {name: '阳泉', value: 31},

    {name: '晋城', value: 70},

    {name: '平遥', value: 20},

    {name: '吕梁', value: 10},

    ];vargeoCoordMap = {//对象'阳泉':[113.57,37.85],

    '大同':[113.3,40.12],

    '长治':[113.08,36.18],

    '临汾':[111.5,36.08],

    '太原':[112.53,37.87],

    '晋城':[112.43,36.87],

    '平遥':[112.03,37.37],

    '吕梁':[112.53,37.37],

}varconvertData =function (data) {

    varres = [];

    for(vari = 0; i < data.length; i++) {

        vargeoCoord = geoCoordMap[data[i].name];

        if (geoCoord) {

            res.push({

                name: data[i].name,

                value: geoCoord.concat(data[i].value)  //新值= 坐标+旧值;            });

        }

    }

    returnres;// [113.57, 37.85, 31]};

option = {

    backgroundColor: '#404a59',

    title: {

        text: '矿山灾害点危险性展示',

        left: 'center',

        textStyle: {

            color: '#fff',

            fontSize:25        }

    },

    tooltip: {          //提示框组件trigger: 'item',

        formatter:'{b}
',//{c@[2]}show:false    },

    legend: {            //图例orient: 'vertical',

        y: 'bottom',

        x: 'right',

        data: ['危害性'],

        textStyle: {

            color: '#fff'        }

    },

    geo: {

        map: "china",

        label: {

            emphasis: {

                show: false            }

        },

        roam: true,

        center:[112.38,37.67],

        zoom:7,

        itemStyle: {

            normal: {

                areaColor: "#323c48",

                borderColor: "#000000"            },

            emphasis: {

                areaColor: "#2a333d"            }

        }

    },

    series: [{

        name: '危险指数:',

        type: 'effectScatter',

        coordinateSystem: 'geo',

        data: convertData(data.sort(function (a, b) {

            returnb.value - a.value;

        }).slice(0, 8)),//选取从 start 到数组结尾的所有元素,该方法并不会修改数组,而是返回一个子数组symbolSize:function (val) {

            returnval[2] / 2;//res数组中的第三个元素        },

        showEffectOn: 'render',

        rippleEffect: {

            brushType: 'stroke'        },

        hoverAnimation: true,

        label: {

            normal: {

                formatter: '{b}:{@2}',

                position: 'right',

                show: false            },

            emphasis: {

                show: true            }

        },

        itemStyle: {

            normal: {

                color: '#f4e925',

                shadowBlur: 10,

                shadowColor: '#333'            }

        },

        zlevel: 1    }

    ]

};

myChart.setOption(option);/*a(); 执行一次绘制地图

$(window).resize(function() {  窗口缩放一次

    map.resize();              地图画布缩放一次

    a()                        地图再绘制一次

    */


最后说两个要注意的点:

 1. 看清楚当前的版本,现在更新到了4.x,有一些属性在之前的版本上做了改动

 2. 引用时注意版本,可以看到bootcdn里可选的很多,自己测试时建议选完整版的

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,539评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,594评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,871评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,963评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,984评论 6 393
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,763评论 1 307
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,468评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,357评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,850评论 1 317
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,002评论 3 338
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,144评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,823评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,483评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,026评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,150评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,415评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,092评论 2 355

推荐阅读更多精彩内容