在这篇文章里vue中使用echarts自定义浮窗内容及样式_芝士焗红薯的博客-CSDN博客,总结了echarts的一些简单用法。这篇文章,一个是在原来的自定义浮窗内容上实现了地图的颜色渐变,一个是简化了地图的样式。

1.简化地图样式

上篇文章地图的样式感觉是带点发光的虚影,是立体的,具体代码如下(写在geo里):

// 地图区域的样式设置itemStyle: {normal: {borderColor: 'rgba(147, 235, 248, 1)',borderWidth: 1,areaColor: {type: 'radial',x: 0.5,y: 0.5,r: 0.8,colorStops: [{offset: 0,color:'#4a9de4' // 0% 处的颜色},{offset: 1,color:'#4a9de4' // 100% 处的颜色}],globalCoord: false // 缺省为 false},shadowColor: '#83c4f3',shadowOffsetX: -2,shadowOffsetY: 2,shadowBlur: 10},// 鼠标放上去高亮的样式emphasis: {areaColor: '#0984e3',borderWidth: 0}}

具体每行代码实现了什么样式,我没有研究。

因为我们要实现地图的颜色渐变,所以只需要地图有最简单的样式,即只需要设置地图的边界颜色、填充颜色。

itemStyle: {normal: {// 地图边界颜色borderColor: '#fff',// 地图区域背景颜色areaColor: '#AAD5FF',},// 鼠标放上去高亮的样式emphasis: {// 鼠标放上去地图区域背景颜色areaColor: '#0984e3',borderWidth: 0}
}

这样就实现了一个地图填充蓝色,高亮深蓝色,边界为白色的地图。

2.实现颜色渐变

在上篇文章中我们提到,formatter接收一个params,params里有两个value。颜色的渐变是根据value的值来改变的,但上篇文章接收的params中的value需要是一个数值,我们如果需要实现浮窗,就需要接收不止一个value。

后来在别的文章中发现还可以给data设置一个text,用来存放浮窗内容,此时我们就可以把airData的内容更新为:

let airData = [{name:'徐州市',value:38409,text:{kjnumber:'38409',ljnumber:'10',lwnumber:'10',zznumber:'10'}},{name:'连云港市',value:20716,text:{kjnumber:'20716',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'宿迁市',value:20047,text:{kjnumber:'20047',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'淮安市',value:21541,text:{kjnumber:'21541',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'盐城市',value:35649,text:{kjnumber:'35649',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'扬州市',value:39958,text:{kjnumber:'39958',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'泰州市',value:39107,text:{kjnumber:'39107',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'南通市',value:59942,text:{kjnumber:'59942',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'南京市',value:119136,text:{kjnumber:'119136',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'镇江市',value:29701,text:{kjnumber:'29701',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'常州市',value:62877,text:{kjnumber:'62877',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'无锡市',value:103338,text:{kjnumber:'103338',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'苏州市',value:153239,text:{kjnumber:'153239',ljnumber:'20',lwnumber:'10',zznumber:'10'}}
]

让value存放数值,将浮窗内的内容存进text(text里也可以是数组,但是用对象更好,因为这个数据之后一定是后端传过来可以实时更新的,写死的数据无所谓数组或对象)。这时候再获取params里的值,可以看到当data.value是数值时,value就可以获取到了。

然后我们加入颜色渐变的代码(直接放进去,和geo,series同级):

visualMap:{min:10000,max:130000,inRange:{// color:['#83c4f3', '#4a9de4'], //控制颜色渐变的范围color:['#e0ffff', '#006edd']},calculable: true //出现滑块
}

就可以获得一个渐变的地图:

3.自定义浮窗内容

因为我们的airData更新了,formatter中接收的参数也需要修改(formatter写在tooltip里):

formatter (params) {console.log(params)return `会计人员总人数:${params.data.text.kjnumber}</br>领军人数:${params.data.text.ljnumber}</br>论文数量:${params.data.text.lwnumber}</br>著作数量:${params.data.text.zznumber}`
},

然后就实现了自定义浮窗内容:

4.完整代码

  initCharts () {const charts = echarts.init(this.$refs['charts'])let airData = [{name:'徐州市',value:38409,text:{kjnumber:'38409',ljnumber:'10',lwnumber:'10',zznumber:'10'}},{name:'连云港市',value:20716,text:{kjnumber:'20716',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'宿迁市',value:20047,text:{kjnumber:'20047',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'淮安市',value:21541,text:{kjnumber:'21541',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'盐城市',value:35649,text:{kjnumber:'35649',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'扬州市',value:39958,text:{kjnumber:'39958',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'泰州市',value:39107,text:{kjnumber:'39107',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'南通市',value:59942,text:{kjnumber:'59942',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'南京市',value:119136,text:{kjnumber:'119136',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'镇江市',value:29701,text:{kjnumber:'29701',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'常州市',value:62877,text:{kjnumber:'62877',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'无锡市',value:103338,text:{kjnumber:'103338',ljnumber:'20',lwnumber:'10',zznumber:'10'}},{name:'苏州市',value:153239,text:{kjnumber:'153239',ljnumber:'20',lwnumber:'10',zznumber:'10'}}]const option = {// 背景颜色backgroundColor: 'white',// 提示浮窗样式tooltip: {show: true,trigger: 'item',alwaysShowContent: false,backgroundColor: '#0C121C',borderColor: 'rgba(0, 0, 0, 0.16);',hideDelay: 100,triggerOn: 'mousemove',enterable: true,textStyle: {color: '#DADADA',fontSize: '12',width: 20,height: 30,overflow: 'break'},formatter (params) {console.log(params)return `会计人员总人数:${params.data.text.kjnumber}</br>领军人数:${params.data.text.ljnumber}</br>论文数量:${params.data.text.lwnumber}</br>著作数量:${params.data.text.zznumber}`},showDelay: 100},// 地图配置geo: {map: 'jiangsu',// 地图文字label: {// 通常状态下的样式normal: {// 默认是否显示地区名称show: true,textStyle: {color: 'black'}},// 鼠标放上去的样式emphasis: {textStyle: {color: 'black'}}},// 地图区域的样式设置itemStyle: {normal: {// 地图边界颜色borderColor: '#fff',// 地图区域背景颜色areaColor: '#AAD5FF',},// 鼠标放上去高亮的样式emphasis: {// 鼠标放上去地图区域背景颜色areaColor: '#0984e3',borderWidth: 0}}},series: [{data: airData,geoIndex: 0,  //将空气质量的数据和第0个geo配置关联在一起type:'map',},],// 视觉映射组件visualMap:{min:10000,max:130000,inRange:{color:['#e0ffff', '#006edd'] //控制颜色渐变的范围},calculable: true //出现滑块}}// 地图注册,第一个参数的名字必须和option.geo.map一致echarts.registerMap('jiangsu', zhongguo)charts.setOption(option)}  charts.setOption(option)}

vue中使用echarts实现地图颜色渐变及自定义浮窗内容相关推荐

  1. VUE 中实现echarts中国地图 人口迁徙

    VUE 中实现echarts中国地图 人口迁徙 效果图: 安装Echarts依赖 要在vue中使用Echarts 需要先安装依赖 npm install echarts --save 这是我的Echa ...

  2. 在Vue中使用eCharts的地图图表,及生成自定义地图数据(乡镇级)

    如何在Vue中使用eCharts的地图图表,及如何生成自定义地图数据(乡镇级) 文章目录 一.在Vue使用ECharts地图功能 二.生成地图数据 1.安装Bigemap 程序 2.生成需要的各乡镇地 ...

  3. VUE中使用Echarts绘制地图迁移

    踩坑说明 很久以前写jsp时使用过echarts的china.js插件,不过echarts是2.0的,目前vue项目中使用echarts3.8.5,直接将china.js插件引入,代码复制,运行一看, ...

  4. vue中展示echarts中国地图

    在vue项目中展示中国地图可以使用echarts库,根据配置数据区分不同颜色展示地图等功能. 先看效果 一.安装Echarts npm install echarts@4.9.0 --save 我这里 ...

  5. vue中使用echarts中国地图

    一效果图 二 上代码 封装的完整的地图组件,里面注释了很多就不解释了 <template><div class="mapContent"><div r ...

  6. Vue中使用echarts绘制地图,以及只显示南海问题

    下载echarts依赖 下载依赖我想大家都会:cnpm / npm install echartsyar add echarts typescript项目 npm install @types/ech ...

  7. vue中引用echarts全国地图

    <template><div><div ref="mapInfo" style="width:750px; height: 540px&qu ...

  8. vue中使用echarts实现动态数据绑定、获取后端接口数据

    之前几篇echarts的文章是实现了静态的柱状图.折线图.饼状图.地图,在项目中我们肯定是需要获取后端接口,将后端返回的数据显示在图表上,所以这次就记录一下如何实现echarts的动态数据绑定. 简单 ...

  9. vue中基于echarts和基于高德地图的两种地图下钻与上浮方式

    ** vue中基于echarts和基于高德地图的两种地图下钻与上浮方式 ** 基于echarts的地图下钻与上浮(浙江省为例) 第一步:在<template>中构建承载echarts的do ...

最新文章

  1. ant table表格整行点击事件并获取当前行的数据
  2. JSP 学习笔记 3
  3. 跨平台的 .NET 运行环境 Mono 3.2 新特性
  4. (Buuctf) [第五空间2019 决赛]PWN5 简单格式化字符串漏洞利用
  5. 例5-17和例5-18
  6. 如何使用 C# 中的 Action, Func,Predicate
  7. html怎么让五张照片并排显示,最考验右脑5张照片,30s内能发现问题都是牛人,PS做不出来...
  8. 走进新华三解决方案 360°业务能力中心,读懂新华三如何助力企业数字化转型
  9. 转:EL表达式的11个内置对象
  10. php微信二次分享出错,解决微信二次分享bug
  11. H3C题库HCNE的 最新
  12. 基于HT for Web矢量实现3D叶轮旋转
  13. web gooflow流程图实现带公式的流程配置
  14. 洛谷4173(fft带通配符字符串匹配)
  15. 对抗学习概念、基本思想、方法综述
  16. 前高管苏箐离职,原因或在于他的“杀人”言论同样对华为自身不利
  17. 使用Keras构建深度图像搜索引擎
  18. C语言打印乘法口诀表
  19. 剑指 Offer 51-60
  20. Dynamics 365 for Sales: Email Engagement

热门文章

  1. 数据库插入数据报错“1366 - Incorrect string value: ‘\xE7\x94\xB7‘ for column ‘sex‘ at row 1”
  2. 如何更新word文档中的文献引用编号?
  3. 【一些常用的递推通项公式的求法】
  4. 跨境电商独立站是什么意思?有什么优势?
  5. 蓝海讯通年中总结大会,陈旭总结2018上半年工作要点
  6. Failed to initialize end point associated with ProtocolHandler [“http-bio-8080“]
  7. 最新蓝白软件库iappv3源码+内置下载软件
  8. 深度学习课程大纲_一份639页深度学习:Deep Learning硬核课程PPT
  9. 树莓派实现远程控制空调
  10. 远程桌面连接时打不开计算机等,为什么远程连接连不上(远程桌面开启方法与无法连接解决办法)...