前言:

1、实现自定义左下角的视觉映射组件(包括自定义颜色、文字、图元大小)
2、实现自定义悬浮提示框
如下图所示:

实现步骤:

一、在vue中安装echarts

1、npm install echarts

二、在vue组件中使用echarts

1、在组件中先引入echarts
import echarts from 'echarts' // 引入echarts中国地图数据
2、在组件中引入中国地图数据
require('echarts/map/js/china')
ps:地图类的echarts实现是需要额外引入地图数据了。
见官网:https://echarts.baidu.com/option.html#geo.map

3、在组件页面内定一个标签来渲染地图

<div id="china_map" style='width:600px;height:400px;'> </div>

4、初始化 echarts 实例和指定配置参数
我一般是在mounted生命周期函数中进行初始化地图表格数据的。

mounted () {// 初始化echarts实例this.chinachart = echarts.init(document.getElementById('china_map'))// 进行相关配置this.chartOption = { tooltip: { // 鼠标移到图里面的浮动提示框// formatter详细配置: https://echarts.baidu.com/option.html#tooltip.formatterformatter (params, ticket, callback) { // params.data 就是series配置项中的data数据遍历let localValue,perf,downloadSpeep,usability,pointif (params.data) {localValue = params.data.valueperf = params.data.perfdownloadSpeep = params.data.downloadSpeepusability = params.data.usabilitypoint = params.data.point} else { // 为了防止没有定义数据的时候报错写的localValue = 0perf = 0downloadSpeep = 0usability = 0point = 0}let htmlStr = `<div style='font-size:18px;'> ${params.name}</div><p style='text-align:left;margin-top:-10px;'>区域对应数据value:${localValue}<br/>性能perf:${perf}<br/>下载速度downloadSpeep:${downloadSpeep}<br/>可用性usability:${usability}<br/>监测点数point:${point}<br/></p>`return htmlStr}// backgroundColor:"#ff7f50",//提示标签背景颜色// textStyle:{color:"#fff"} //提示标签字体颜色}, // visualMap的详细配置解析:https://echarts.baidu.com/option.html#visualMapvisualMap: { // 左下角的颜色区域type: 'piecewise', // 定义为分段型 visualMapmin: 0,max: 1000,itemWidth: 40,bottom: 60,left: 20,pieces: [ // 自定义『分段式视觉映射组件(visualMapPiecewise)』的每一段的范围,以及每一段的文字,以及每一段的特别的样式{gt: 900, lte: 1000, label: '非常好', color: '#6ad86e'}, // (900, 1000]{gt: 500, lte: 900, label: '正常', color: '#9adcfa'}, // (500, 900]{gt: 310, lte: 500, label: '警告', color: '#ffeb3b'}, // (310, 500]{gt: 200, lte: 300, label: '较差', color: '#ff9800'}, // (200, 300]{gt: 10, lte: 200, label: '非常差', color: 'orangered'}, // (10, 200]{value: 0, label: '无数据', color: '#999'} // [0]]},// geo配置详解: https://echarts.baidu.com/option.html#geogeo: { // 地理坐标系组件用于地图的绘制map: 'china', // 表示中国地图// roam: true, // 是否开启鼠标缩放和平移漫游zoom: 1.2, // 当前视角的缩放比例(地图的放大比例)label: {show: true},itemStyle: { // 地图区域的多边形 图形样式。borderColor: 'rgba(0, 0, 0, 0.2)',emphasis: { // 高亮状态下的多边形和标签样式shadowBlur: 20,shadowColor: 'rgba(0, 0, 0, 0.5)'}}},series: [{name: '', // 浮动框的标题(上面的formatter自定义了提示框数据,所以这里可不写)type: 'map',geoIndex: 0,label: {show: true},// 这是需要配置地图上的某个地区的数据,根据后台的返回的数据进行拼接(下面是我定义的假数据)data: [{'name': '北京','value': 599,'perf': '0.501s', // 性能'downloadSpeep': '1.221MB/s', // 下载速度'usability': '100%', // 可用性'point': '250' // 监测点}, {'name': '上海','value': 142}, {'name': '黑龙江','value': 44}, {'name': '新疆','value': 999,'perf': '0.501s', // 性能'downloadSpeep': '1.221MB/s', // 下载速度'usability': '100%', // 可用性'point': '250' // 监测点}, {'name': '深圳','value': 92}, {'name': '湖北','value': 810}, {'name': '四川','value': 453}]}]}// 使用刚指定的配置项和数据显示地图数据this.chinachart.setOption(this.chartOption)}

注意:
我在跟后台对接的时候,后台返回的数据有些是和原配置的属性名不一样的,导致数据无法渲染,所以我经过测试叫后台把属性名改成成和echarts默认属性名一样后就能正常渲染数据了(如果地图不能正常渲染那么可以尝试对照下面的进行排查)。
(比如:
series配置项中的data中的数据,name如果想要能正常匹配上地图上的地区名,那么就最好使用name属性名;
visualMap配置项中的pieces中的value值,如果只需要相等的情况渲染对应数值区域的颜色,那么就需要规定属性名为value,然后series配置项中的data中的数据也是要定义数据属性名为value

vue中使用ECharts实现中国地图配置详解(配官方配置地址)相关推荐

  1. vue中使用echarts绘制中国地图

    首先需要一个绘制中国地图的json文件(资源还在审核,审核过后会重新贴上来) 1.首先引入echarts和json文件,在需要的地方引即可 import echarts from 'echarts'; ...

  2. vue中使用ECharts引入中国地图

    坑我来踩 代码你们看 china.js 提取码:iwn9 百度网盘 请输入提取码 <template><div class="echarsMap">< ...

  3. vue项目使用ECharts的中国地图,设置地图不同板块的颜色以及动态显示效果

    本篇讲述在vue中使用echarts的中国地图,以及对不同板块进行渐变色的设置. 效果图如下: 实现上图效果步骤如下: 确保项目中下载了echarts,然后在main.js中引用echarts imp ...

  4. Vue中使用echart实现中国地图统计图

    Vue中使用echart实现中国地图统计图 前言 Echart版本的确定 全局导入或按需导入 在对应的页面调用echart 前后端数据交互注意事项 前言 在Vue2.x开发中,为了更好地展示某一个时间 ...

  5. ActiveMQ配置详解之如何配置自动重新连接

    2019独角兽企业重金招聘Python工程师标准>>> ActiveMQ配置详解之如何配置自动重新连接 博客分类: MQ 这从这一篇开始,将讲解在activeMQ中的相关配置.由于a ...

  6. vue中使用echarts和百度地图实现飞机迁徙图

    在vue-cli生成的项目中使用echarts和百度地图api实现飞机迁徙图,当然也可以实现其他效果. 1. 准备 项目安装echarts 在已经生成的vue项目根目录npm install echa ...

  7. 基于VUE+TS中引用ECharts的中国地图和世界地图密度表

    (第一次写掘金,嗯也不知道写啥好.想了想,先来一份简单可口的老菜谱.虽然以前在其他平台也上过,换个地方说不准口味刚好呢哈哈哈哈-) 首先先附上官网 http://echarts.baidu.com/o ...

  8. ArcGIS精美中国地图制作(详解)

    前言 今天看了smileliaohua老师的博客,学到很多,于是进行实验复现一下博客中的中国地图底图.下文中步骤为smileliaohua老师的步骤,但截图是我进行复现时重新取的图片,并且完善了老师博 ...

  9. Vue中的情侣属性$dispatch和$broadcast详解

    $dispatch 和 $broadcast 作为一对情侣 ?属性,在 Vue 1.0 中主要用来实现基于组件树结构的事件流通信 -- 通过向上或向下以冒泡的形式传递事件流,以实现嵌套父子组件的通信. ...

最新文章

  1. python 无头模式 绕过检测_Python chrome 无头模式的问题
  2. Golang+Python 实现安全动态开机密码+服务器存储
  3. Oracle数据库日期范围查询的两种实现方式
  4. HTML5元素周期表
  5. 区块链BaaS云服务(24)秘猿科技CITA
  6. DOS下perl调试命令
  7. PXE高效批量安装和Kickstart无人值守安装——真正完成批量自动安装
  8. (2)stm32开发之使用Keil MDK以及标准外设库创建STM32工程
  9. 【算法】剑指 Offer 24. 反转链表
  10. Spring Boot : SpringApplicationRunListener
  11. Python设置画布大小_Python第25课:海龟绘图_自定义函数的应用
  12. iOS 实现搜索关键字高亮
  13. Java 常用修饰符总结
  14. 局域网桌面监控软件_如何促进局域网监控软件在企业中的普及
  15. Ubuntu常用软件下载
  16. 数字IC设计verilog编写——6脉冲同步器
  17. 南阳oj入门题-奋斗的小蜗牛
  18. Windows10 错误代码:0xc000007b 问题解决
  19. 由交通银行卡被盗42万元谈网络应用安全攻防
  20. 微信小程序图片轮播+预览效果实现

热门文章

  1. 计算机桌面有一条红线去不掉,电脑屏幕中间有一条红线,请问怎么除去?
  2. 线上CPU100%及应用OOM的排查和解决过程
  3. [源码和文档分享]基于汇编语言实现的彩色黑白棋游戏
  4. 安全工具:无疾而终的clairctl
  5. linux安装压力测试工具vegeta
  6. 盘点Golang测试相关库
  7. 对c#倒计时程序的一点点改善(基于杜洋工作室视频)
  8. 浙江大学区块链协会纳新 | 加入我们,“链”接未来
  9. SAP Business One系统中如何创建财务报表模板
  10. 仿扣扣聊天工具(实现多对一)