Echarts学习使用之路(Map地图篇)

搁置了好长时间一直没来Echarts里面的地图篇章,感觉自己真懒!好了,现在先来总结一下地图这一块,有误或者不足的还望指教补充!

之前上一篇http://www.jianshu.com/p/5c59a562347f提到过,下载Echarts版本最好下载完整版的,因为这儿我掉过一次坑,echarts的版本是同事导入到项目中去的,所以没怎么注意是什么版本,结果在使用的时候,各个地方都是正确的,但是地图一直不显示,最后才发现是echarts的版本问题,当时应该是常用的那个版本,缺少了地图这个组件,所以后面改成完整版之后显示都正常了。

还有很重要的一点,如果要使用更详细的城市地图,或者是自己需求范围的地图,还得用空间GIS地图转换成了符合echarts的数据格式再使用,但是鉴于GIS地图都是保密数据,所以还有一个方式可能拿到自己想要的地图范围,用Arcgis自己画,如果没使用过这个软件的人估计画起来也够呛的。我还好,有一个给力的同事,正好这个专业的,画了一个成都的区域地图给我们用。接下来正式开始在地图上下功夫了!因为我做的是成都的地图,所以下面我就用成都地图为例。

首先,我们在Arcgis里面能获取到成都各区域的中心坐标,先将各区域的中心坐标和地点名称以数组的形式定义出来,例如:

var coor = {"双流区": [这里是双流区的中心坐标值]}

如果想做成一点向多点发射的那种效果,还需要将中心点区域的名称和坐标和发散出来的几个区域的名称和坐标同样以数组的形式定义出来,例如:

var testData = [
[{name:"高新区"},{name:'双流区',value = 100],
[{name:"高新区"},{name:'温江区',value = 20],
.......
]

这里的第一个name指的是发散的中心点,后面数组里的name指的是发散开来到达的一个区域点,value指的是该区域高亮显示的程度。参照下图中红色框里的点。


image.png

定义完这两个地方之后,就需要将地图的数据类型转化为echarts可以识别的类型,这个模板Echarts官网实例中有,参考:

var convertData = function (data) {
    var res = [];
    for (var i = 0; i < data.length; i++) {
        var dataItem = data[i];
        var fromCoord = geoCoordMap[dataItem[0].name];
        var toCoord = geoCoordMap[dataItem[1].name];
        if (fromCoord && toCoord) {
            res.push([{
                coord: fromCoord
            }, {
                coord: toCoord
            }]);
        }
    }
    return res;
};

切记,这里需要引入所需城市地图的js文件,不然该城市的地图是获取不到的哦~后面就跟之前介绍的步骤类似了,开始定义一个option,然后开始怒怼地图了!!!

一:地图上城市或区域名称是否高亮显示

image.png

如果想在地图上高亮显示所有地区或城市的名称,统一设置:

geo:{
  map: 'chengdu',
  label: {
      normal: {show:true}
  }
} 

但是这里因为比例问题,所以有些区域名称我是隐藏的,所以这里我是单独设置的。首先设置全部名称不显示,然后再单独选择区域显示或者不显示。

region: [{
  name: '锦江区',
  itemstyle: {
        normal: {
                areaColor: '#4559ad',
                borderColor: '#6a8de1'
    }
  },
label: {
    emphasis: {
                show: false
    }
}
},
{
                name: '郫都区',
                itemStyle: {
                    normal: {
                        areaColor: '#4559ad',
                        borderColor: '#6a8de1'
                    }
                },
                label: {
                    normal: {
                        show: true,
                        textStyle: {
                            color: '#6072dc'
                        }
                    },
                    emphasis:{
                        textStyle: {
                            color: '#6072dc'
                        }
                    }
                }
            }]

当时琢磨这一块也画了点时间,毕竟这个文档太长太多,看得眼花缭乱的。接下来是设置标记的图形,Echarts官网给了几个示例,如果不想用,可以通过url链接,自定义标记的图形。
ECharts 提供的标记类型包括 'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow'。也可以通过 'image://url' 设置为图片,其中 url 为图片的链接,或者 dataURI。可以通过 'path://' 将图标设置为任意的矢量路径。这种方式相比于使用图片的方式,不用担心因为缩放而产生锯齿或模糊,而且可以设置为任意颜色。路径图形会自适应调整为合适的大小。

series:[{
  effect: {
            show: true,
            period: 6,
            trailLength: 0,
            symbol: rect,
            symbolSize: 15
        }
}]

最后,设置迁徙图的路程线直接通过linestyle设置即可,具体参考文档了。对了,还有一点,roam设置是否开启拖拽漫游(移动和缩放)。
还有很多东西需要通过参考文档来操作。这里我主要用到的就这些,如果还有补充的,欢迎各位大佬补充交流!抱拳~

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

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 11,628评论 4 59
  • Swift版本点击这里欢迎加入QQ群交流: 594119878最新更新日期:18-09-17 About A cu...
    ylgwhyh阅读 24,875评论 7 249
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 170,580评论 25 707
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,103评论 18 139
  • 我最最爱的人儿啊 云如你一般 洁白,柔软 花如你一般 芳香,美丽 可你如海水般 壮阔,无垠 又如阳光般 无私,温暖...
    红白Y阅读 302评论 0 0