先上图片

参考内容:https://www.makeapie.com/editor.html?c=xm7FhEqj6w&v=2

这里直接展示代码,相关的图标,背景,大部分在代码中都做了注释(背景图是我在css中给div加的background-image,图标上的蓝色框也是图片),其余可以参考echart文档,引入之前要将jquery引入,将china.js引入(china.js需要的可以点击下面的链接)

https://blog.csdn.net/GeniusMao/article/details/120267957

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>飞线图</title><script src="./js/jquery-1.8.3.js"></script><script src="https://cdn.jsdelivr.net/npm/echarts@5/dist/echarts.min.js" type="text/javascript"></script><script src="./js/china.js"></script><style>html {height: 100%;}body {height: 100%;margin: 0;padding: 0;background-color: red;background: url("./image/planBac.jpg") no-repeat;background-size: 100% 100%;}</style>
</head>
<body>
<div id="chart-box" style="width:100%; height:100%;"></div>
<script type="text/javascript">var geoCoordMap = {'上海': [121.4648, 31.2891],'东莞': [113.8953, 22.901],'东营': [118.7073, 37.5513],'中山': [113.4229, 22.478],'临汾': [111.4783, 36.1615],'临沂': [118.3118, 35.2936],'丹东': [124.541, 40.4242],'丽水': [119.5642, 28.1854],'乌鲁木齐': [87.9236, 43.5883],'佛山': [112.8955, 23.1097],'保定': [115.0488, 39.0948],'兰州': [103.5901, 36.3043],'包头': [110.3467, 41.4899],'北京': [116.4551, 40.2539],'北海': [109.314, 21.6211],'南京': [118.8062, 31.9208],'南宁': [108.479, 23.1152],'南昌': [116.0046, 28.6633],'南通': [121.1023, 32.1625],'厦门': [118.1689, 24.6478],'台州': [121.1353, 28.6688],'合肥': [117.29, 32.0581],'呼和浩特': [111.4124, 40.4901],'咸阳': [108.4131, 34.8706],'哈尔滨': [127.9688, 45.368],'唐山': [118.4766, 39.6826],'嘉兴': [120.9155, 30.6354],'大同': [113.7854, 39.8035],'大连': [122.2229, 39.4409],'天津': [117.4219, 39.4189],'太原': [112.3352, 37.9413],'威海': [121.9482, 37.1393],'宁波': [121.5967, 29.6466],'宝鸡': [107.1826, 34.3433],'宿迁': [118.5535, 33.7775],'常州': [119.4543, 31.5582],'广州': [113.5107, 23.2196],'廊坊': [116.521, 39.0509],'延安': [109.1052, 36.4252],'张家口': [115.1477, 40.8527],'徐州': [117.5208, 34.3268],'德州': [116.6858, 37.2107],'惠州': [114.6204, 23.1647],'成都': [103.9526, 30.7617],'扬州': [119.4653, 32.8162],'承德': [117.5757, 41.4075],'拉萨': [91.1865, 30.1465],'无锡': [120.3442, 31.5527],'日照': [119.2786, 35.5023],'昆明': [102.9199, 25.4663],'杭州': [119.5313, 29.8773],'枣庄': [117.323, 34.8926],'柳州': [109.3799, 24.9774],'株洲': [113.5327, 27.0319],'武汉': [114.3896, 30.6628],'汕头': [117.1692, 23.3405],'江门': [112.6318, 22.1484],'沈阳': [123.1238, 42.1216],'沧州': [116.8286, 38.2104],'河源': [114.917, 23.9722],'泉州': [118.3228, 25.1147],'泰安': [117.0264, 36.0516],'泰州': [120.0586, 32.5525],'济南': [117.1582, 36.8701],'济宁': [116.8286, 35.3375],'海口': [110.3893, 19.8516],'淄博': [118.0371, 36.6064],'淮安': [118.927, 33.4039],'深圳': [114.5435, 22.5439],'清远': [112.9175, 24.3292],'温州': [120.498, 27.8119],'渭南': [109.7864, 35.0299],'湖州': [119.8608, 30.7782],'湘潭': [112.5439, 27.7075],'滨州': [117.8174, 37.4963],'潍坊': [119.0918, 36.524],'烟台': [120.7397, 37.5128],'玉溪': [101.9312, 23.8898],'珠海': [113.7305, 22.1155],'盐城': [120.2234, 33.5577],'盘锦': [121.9482, 41.0449],'石家庄': [114.4995, 38.1006],'福州': [119.4543, 25.9222],'秦皇岛': [119.2126, 40.0232],'绍兴': [120.564, 29.7565],'聊城': [115.9167, 36.4032],'肇庆': [112.1265, 23.5822],'舟山': [122.2559, 30.2234],'苏州': [120.6519, 31.3989],'莱芜': [117.6526, 36.2714],'菏泽': [115.6201, 35.2057],'营口': [122.4316, 40.4297],'葫芦岛': [120.1575, 40.578],'衡水': [115.8838, 37.7161],'衢州': [118.6853, 28.8666],'西宁': [101.4038, 36.8207],'西安': [109.1162, 34.2004],'贵阳': [106.6992, 26.7682],'连云港': [119.1248, 34.552],'邢台': [114.8071, 37.2821],'邯郸': [114.4775, 36.535],'郑州': [113.4668, 34.6234],'鄂尔多斯': [108.9734, 39.2487],'重庆': [107.7539, 30.1904],'金华': [120.0037, 29.1028],'铜川': [109.0393, 35.1947],'银川': [106.3586, 38.1775],'镇江': [119.4763, 31.9702],'长春': [125.8154, 44.2584],'长沙': [113.0823, 28.2568],'长治': [112.8625, 36.4746],'阳泉': [113.4778, 38.0951],'青岛': [120.4651, 36.3373],'韶关': [113.7964, 24.7028]};var BJData = [[{name: '北京'}, {name: '上海', value: 100, Pname: '上海'}],[{name: '北京'}, {name: '乌鲁木齐', value: 199, Pname: '乌鲁木齐'}],[{name: '北京'}, {name: '连云港', value: 102, Pname: '连云港'}],[{name: '北京'}, {name: '铜川', value: 47, Pname: '铜川'}],[{name: '北京'}, {name: '南宁', value: 82, Pname: '南宁'}],[{name: '北京'}, {name: '青岛', value: 102, Pname: '青岛'}],[{name: '北京'}, {name: '韶关', value: 114, Pname: '韶关'}],[{name: '北京'}, {name: '哈尔滨', value: 114, Pname: '哈尔滨'}],[{name: '北京'}, {name: '拉萨', value: 114, Pname: '拉萨'}],];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 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;};var color = ['black'];var series = [];var tooltip = {};[['北京', BJData]].forEach(function (item, i) {item[1].map(function (dataItem) {// tooltip.formatter=geoCoordMap[dataItem[1].name].concat([dataItem[1].value]) //提示标签格式return {name: dataItem[1].Pname,value: geoCoordMap[dataItem[1].name].concat([dataItem[1].value])};})//设置tooltip的文字tooltip.trigger = 'item'tooltip.formatter = function (params) {console.log(params)if (typeof (params.data.value)!='undefined'){return params.data.name+'    '+params.data.value[2]}}tooltip.backgroundColor = "green"//提示标签背景颜色tooltip.textStyle = {color: "black"} //提示标签字体颜色series.push({name: item[0],type: 'lines',zlevel: 1,effect: {show: true,period: 6,trailLength: 0.7,color: '#fff',symbolSize: 8},lineStyle: {normal: {color: color[i],width: 0,curveness: 0.2}},data: convertData(item[1])},{name: item[0],type: 'lines',zlevel: 2,effect: {//线上移动的点show: true,period: 6,trailLength: 0,symbol: planePath,symbolSize: 20},lineStyle: {normal: {color: color[i],width: 1,opacity: 0.4,curveness: 0.2}},data: convertData(item[1])},{name: item[0],type: 'effectScatter',coordinateSystem: 'geo',zlevel: 2,rippleEffect: {brushType: 'stroke'},label: {normal: {show: true,//图标位置position: ['-500%', '-200%'],color:'yellow',fontWeight:'bold',fontSize :13,backgroundColor: {image: './image/butBac.png',// 这里可以是图片的 URL,// 或者图片的 dataURI,// 或者 HTMLImageElement 对象,// 或者 HTMLCanvasElement 对象。},padding: [6, 4, 5, 6],formatter : function (params) {console.log(params)if (typeof (params.data.value)!='undefined'){return params.data.name+' '+params.data.value[2]}}}},//设置动态点的大小/*symbolSize: function (val) {return val[2] / 8;},*/symbolSize: 10,itemStyle: {normal: {//标点的颜色//线性渐变/*color: new echarts.graphic.LinearGradient(0, 0, 0, 1,//4个参数用于配置渐变色的起止位置, 这4个参数依次对应右/下/左/上,四个方位. 而0 0 0 1则代表渐变色从正上方开始[{offset: 0, color: '#59B1E4'},{offset: 0.5, color: '#CBE6FD'},{offset: 1, color: '#59B1E4'}])*///4个参数用于配置渐变色的起止位置, 这4个参数依次对应color: new echarts.graphic.RadialGradient(0.5, 0.5, 1.0, [          // 由中心向四周渐变{offset: 0,color: "black"},{offset: 1,color: "#59B1E4"}]),}},data: item[1].map(function (dataItem) {return {name: dataItem[1].Pname,value: geoCoordMap[dataItem[1].name].concat([dataItem[1].value])};})});});var dom = document.getElementById("chart-box");var myChart = echarts.init(dom);var app = {};var option;option = {backgroundColor: '', //设置无背景色tooltip: tooltip,geo: {map: 'china',center: 1,zoom: 1,aspectScale: .8, //长宽比label: {emphasis: {show: false,textStyle: {color: '#ccc'}}},roam: false,itemStyle: {normal: {borderColor: "white",borderWidth: 2.5,areaColor: "rgba(29,91,188,.2)",fontWeightL: 700,shadowBlur: 10,shadowColor: 'red',borderCap: 'round',borderJoin: 'miter',},emphasis: {areaColor: {type: 'linear',x: 0,y: 0,x2: 0,y2: 1,colorStops: [{offset: 0, color: '#3f15d6' // 0% 处的颜色}, {offset: 1, color: '#d243cd' // 100% 处的颜色}],globalCoord: true // 缺省为 false}}}},series: series};if (option && typeof option === 'object') {myChart.setOption(option);}</script>
</body>

echart制作出中国地图飞线图相关推荐

  1. echarts中国地图飞线图demo

    因为公司要做大屏,需要用到echarts的地图功能,并且要添加飞线功能,在网上查了下资料,翻阅了一下官方文档后,终于是实现出来了 直接上代码 <template><div class ...

  2. echart地图飞线图

    echart中国地图飞线图(附加省份颜色自定义) 本文参考了模拟迁徙 效果图 1.vue项目安装echart,vue-baidu-map:申请百度地图ak npm install echarts -- ...

  3. ECharts+高德卫星地图-飞线图效果

    ECharts+高德地图实现卫星地图-飞线图 加载资源: https://webapi.amap.com/maps?v=1.4.15&key=申请Key(高德开放平台申请key) echart ...

  4. 地图飞线图 echart+高德地图实现

    前提:其实这个东西已经做了很久了,但是因为昨天他突然不显示了,所以重新整了一下 实现效果: 一.引入echart的两个js和高德地图 <!-- 引入echarts --> <scri ...

  5. echarts中国地图飞线

    网上很多代码都不全,只有核心代码,直接cv要么运行不出来,要么报错一大堆,对像我这样的新手及其不友好.这里放上好不容易搞出来的完整代码 直接cv就可食用!  //先确认已经正确引入echarts5.0 ...

  6. d3.js-V3制作简单的飞线图

    d3.js制作简单的飞线图 简介 期末的一个小作业,放上来分享一下.若有不懂的地方欢迎在评论区提问~ 最终效果图: 使用工具 d3.js (V3版本) 步骤简介 准备好数据. 绘制一个中国地图. 绘制 ...

  7. 数据可视轻松制作多点飞线图

    今天为大家讲解一下,在数据可视化软件平台中,地图-多点飞线图的使用. 数据可视化,一个可以帮助您展示数据,统计数据,分析数据,通过可视化界面,多种统计图并行的方式,完成数据交互展示. 首先,我们创建一 ...

  8. Echart基于百度地图实现地图飞线

    echart社区例子都是基于geo底图实现的底图飞线,现实现基于在线地图实现地图飞线: 原例子ECharts Gallery - 模拟迁徙+百度地图 (makeapie.com) 利用ECharts3 ...

  9. echarts实现地图飞线

    echarts实现地图飞线 echarts画地图 echarts画地图 由于地图需要省市区经纬度,需要geoJSON数据,我们使用aliyun官方的JSON数据,以中国地图为例(链接: link.). ...

最新文章

  1. log_pipe日志收集分析系统介绍
  2. Unity3D 多人协作开发 环境搭建 笔记(场景合并)
  3. spring boot2.x整合redis
  4. Oracle:ORA-01789: 查询块具有不正确的结果列数 分析原因和解决办法
  5. poj 1161 最短路构图
  6. 【HDU - 5878】I Count Two Three(打表)
  7. CoreAnimation编程指南(十)KVC
  8. java程序结构_java程序的三种结构
  9. BUG解决:RuntimeError:Given groups=1,weight of size...expected input...but got 3 channels instead.
  10. html同时用多个css,多类选择器的运用_html/css_WEB-ITnose
  11. svnserver 重新启动
  12. matlab imrotated,图像旋转由Matlab无需使用imrotate
  13. mysql添加开机自启_【实操篇】如何设置MySQL开机自启动
  14. IIS 禁用自动目录列表功能
  15. 魔兽争霸III—冰封王座6级考试
  16. 苹果电脑构建XLua的arm64-v8a、armeabi-v7a、x86等的so库,
  17. Linux系统中的超级用户,普通用户,特殊用户(特殊用户)3种类型
  18. 华为鸿蒙新机2k曲面屏,华为mate30概念新机:2K曲面屏+麒麟985+鸿蒙OS系统 国产机皇来袭...
  19. jdbc快速入坑(二)
  20. vue-cli安装、初始化项目

热门文章

  1. 【综合】Cron表达式
  2. (转)图解Intel电脑组装过程
  3. 【三维点云】CC教程1(Context Capture)
  4. SQL数据库查询语句4
  5. 暂无支持此机型的手机版本_安卓门禁模拟软件(需Root)暂无苹果版本
  6. jasperReports 报表生成
  7. 微服务应用大行其道,我提供一个dto和entity转换工具类,方便大家做转换,少写机械代码,多陪陪家人
  8. ISD1760语音输出到LM4890语音放大效果可能不明显。
  9. Dotnetty搭建教程
  10. android手机如何到导出电话号码,苹果手机通讯录怎么导入?如何导出手机通讯录到新手机...