Eachrts离线地图

world.png

代码如下:

<template>

<div id="myMap"></div>

</template>

<script>

import echarts from 'echarts';

import '../../node_modules/echarts/map/js/world.js';

export default {

data(){

return{}

},

mounted(){

this.drawMap();

},

methods:{

drawMap(){

var myCharts = this.$echarts.init(document.getElementById('myMap'));

var geoCoordMap = { // 各城市的经纬度

'南宁': [108.479, 23.1152],

'广州': [113.5107, 23.2196],

'深圳': [114.085947, 22.547],

'重庆': [107.7539, 30.1904],

'芬兰': [24.909912, 60.169095],

'美国': [-100.696295, 33.679979],

'日本': [139.710164, 35.706962],

'韩国': [126.979208, 37.53875],

'瑞士': [7.445147, 46.956241],

'东南亚': [117.53244, 5.300343],

'澳大利亚': [135.193845, -25.304039],

'德国': [13.402393, 52.518569],

'英国': [-0.12797, 51.507702],

'加拿大': [-98.308968, 56.954681]

};

/*

记录下七点城市和终点城市的名称,以及权重,数组第一位为终点城市,数组第二位为起点城市,以及城市的权重,

就是图上圆圈的大小

* */

var SZData = [

[{name: '深圳'}, {name:'芬兰'}],

[{name: '深圳'}, {name:'德国'}],

[{name: '深圳'}, {name:'英国'}],

[{name: '深圳'}, {name:'韩国'}],

[{name: '深圳'}, {name:'日本'}],

[{name: '深圳'}, {name:'瑞士'}],

[{name: '深圳'}, {name:'加拿大'}]

];

var NNData = [

[{name:'南宁'},{name:'澳大利亚',value: 70}]

];

//飞机航线

var planePath ='path://M1705.06,1318.313v-89.254l-319.9-221.799l0.073-208.063c0.521-84.662-26.629-121.796-63.961-121.491c-37.332-0.305-64.482,36.829-63.961,121.491l0.073,208.063l-319.9,221.799v89.254l330.343-157.288l12.238,241.308l-134.449,92.931l0.531,42.034l175.125-42.917l175.125,42.917l0.531-42.034l-134.449-92.931l12.238-241.308L1705.06,1318.313z';

var allData = function(data){

const coordinate = [];

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

var dataItem = data[i];

var startCoord = geoCoordMap[dataItem[0].name]; //起始点坐标

var endCoord = geoCoordMap[dataItem[1].name]; //终点坐标

if(startCoord && endCoord){

coordinate.push([

{

coord: startCoord

},

{

coord: endCoord

}

]);

}

}

return coordinate;

};

var corlors =['#ffa022', '#46bee9'];

var series = [];

[['深圳',SZData],['南宁',NNData]].forEach(function(item, i) {

series.push(

{

// name: item[0],

type: 'lines',

zlevel: 1,

effect:{

show: true,//是否显示动画

period: 6,//显示动画时长

trailLength: 0.7,//轨迹长度

color: '#fff',

symbolSize: 3  //特效大小

},

lineStyle:{//正常情况下线条

normal:{

color: corlors[i],

width: 0,

curveness: 0.2 //线条曲线

}

},

data: allData(item[1]) //特效起始点位置

},

{//小飞机航线

// name: item[0].name + 'Top10',

type: 'lines',

zlevel: 2,

// symbol: ['none','arrow'],//设置箭头

symbolSize: 10,

effect: {

show: true,

period: 6,

trailLength: 0,

symbol: planePath,

symbolSize: 15

},

lineStyle:{

normal:{

color: '#46bee9',

width:1,

opacity: 0.6,

curveness: 0.2

}

},

data: allData(item[1])

},

{//散点

// name: item[0].name + 'Top10',

type: 'effectScatter',

coordinateSystem: 'geo', //采用地理坐标点

zlevel:3,

rippleEffect: {

brushType: 'stroke' //波纹效果

},

label:{

normal:{//默认的文本标签显示样式

show: true,

position: 'left',//标签位置

formatter: '{b}' //标签内容格式容器

}

},

// symbolSize: function(val){

// return val[2] /8;

// },

itemStyle:{

normal:{

color: corlors[i]

}

},

data: item[1].map(function(dataItem) {

return {

name: dataItem[1].name, //起始点名称

value: geoCoordMap[dataItem[1].name],

//散点大小

symbolSize:dataItem[1].value /8

};

})

});

});

series.push({

type: 'effectScatter',

coordinateSystem: 'geo',

zlevel:3,

rippleEffect: {

brushType: 'stroke'

},

label:{

normal:{

show: true,

position: 'left',

formatter: '{b}'

}

},

symbolSize(val){

return val[2] / 8;

},

itemStyle:{

normal:{

color: corlors[1]

}

},

data:[

{

name: '深圳',

value: [114.085947,22.547],

label: {

normal:{

position: 'top'

}

}

},

{

name: '南宁',

value: [108.479, 23.1152],

label: {

normal:{

position: 'bottom'

}

}

}

]

});

myCharts.setOption({

title:{

text: '攻略图',

            left: 'center',

            textStyle: {

                color: '#46bee9'

            }

},

textStyle:{

fontSize: 12

},

tooltip:{

trigger: 'item'

},

legend:{

orient: 'vertical',

top: 'bottom',

left: 'right',

data: ['深圳','南宁'],

textStyle:{

color: '#fff'

},

selectedMode: 'single'

},

geo: {

map: 'world',

roma: false,//禁止缩放平移

itemStyle:{ //每个区域样式

normal: {

areaColor: '#323c48'

},

emphasis:{

areaColor: '#2a333d'

}

},

label:{

emphasis:{

show: false

}

},

//选中的区域

regions:[

{

name: 'China',

selected: true,

itemStyle: { //高亮时的样式

emphasis:{

areaColor: '#7d7d7d'

}

},

label: { //高亮时不显示标签

emphasis:{

show:true

}

}

}

],

itemStyle:{

normal:{

areaColor: '#323c48',

borderColor: '#404a59'

},

emphasis:{

areaColor: '#2a33dd'

}

}

},

series: series

});

链接接口代码

1


2


3


4

}

}

}

/**

* tooltip:{

* trigger: 'axis',

* confine:true,

* textStyle:{

* align:'center'

* },

* axisPointer:{

* type:'cross',

* label:{

* backgroundColor: '#6a7985'

* }

* }

* }

*

* */

</script>

<style>

#myMap{

width: 100%;

height: 600px;

}

</style>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念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