1)项目中作为项目依赖,安装到项目当中(注意必须要结合echars)

npm install echarts vue-echarts --save
npm install echarts-liquidfill --save

2)在需要使用水晶球的组件里引入liquidFill.js

import 'echarts-liquidfill/src/liquidFill.js'; //在这里引入

3)在模板中加入挂载水晶球的DOM节点

<div id="myChartWhater" :style="{width: '340px', height: '220px',}"></div>

4)在方法methods中添加liquidFill调用方法,如
 

在data中先定义:score: 0.8,healthyName: "良好",
  initWater() {
let value = this.score; let myChart = this.echarts.init(document.getElementById("myChartWhater")); let colorScore = this.score * ;
let colorList = [];
if (colorScore >= ) {
let color1 = "rgb(45,224,1135)";
let color2 = "rgb(74,227,141)";
colorList.push(color1);
colorList.push(color2);
} else if (colorScore >= && colorScore < ) {
let color1 = "rgb(41,145,235)";
let color2 = "rgb(0,137,255)";
colorList.push(color1);
colorList.push(color2);
} else if (colorScore >= && colorScore < ) {
let color1 = "rgb(219,185,246)";
let color2 = "rgb(253,208,0)";
colorList.push(color1);
colorList.push(color2);
} else if (colorScore < ) {
let color1 = "rgb(207,74,84)";
let color2 = "rgb(243,17,34)";
colorList.push(color1);
colorList.push(color2);
}
var data = [];
data.push(value);
data.push(value);
myChart.setOption({
backgroundColor: "white", //容器背景颜色
title: {
text: "",
textStyle: {
fontWeight: "normal",
fontSize: ,
color: "rgb(97, 142, 205)"
}
},
series: [
{
type: "liquidFill",
radius: "80%", //水球的半径
data: data,
backgroundStyle: {
color: "white"
},
label: {
normal: {
formatter:
"{a|" +
(value * ).toFixed() +
"}" +
" " +
"\n" +
"\n" +
"{b|" +
this.healthyName +
"}",
textStyle: {
fontSize: //字体大小
},
position: ["50%", "50%"],
rich: {
//富文本 对字体进一步设置样式。a对应的value,b对应的healthyName
a: {
fontSize: ,
lineHeight: ,
fontWeight: "bold",
padding: [, , , ]
},
b: {
fontSize: ,
lineHeight: ,
fontWeight: "bold"
}
}
}
},
outline: {
show: true, //是否显示轮廓 布尔值
borderDistance: , //外部轮廓与图表的距离 数字
itemStyle: {
borderColor: "#edf2f6", //边框的颜色
borderWidth: //边框的宽度
}
},
color: [...colorList]
}
]
});
}
5)在mounted(){}中调用 initWater方法
页面完成效果如:
大功告成!!!!
 
 

  

如何实现动态水球图 --》 echars结合echarts-liquidfill实现的更多相关文章

  1. 使用echarts水球图

    使用echarts水球图 官方实例中没有水球图样式,当我们需要用到水球图的时候需要下载echarts-liquidfill.js. 使用 在echarts之后引入 echarts-liquidfill ...

  2. echarts水球图编写

    // 前提条件 需要引入这个插件<script src="./echarts-liquidfill.min.js"></script> // 代码 let ...

  3. 【带着canvas去流浪(7)】绘制水球图

    目录 一. 任务说明 二. 重点提示 三. 示例代码 四. 文字淹水效果的实现 五. 关于canvas抗锯齿 六. 小结 示例代码托管在:http://www.github.com/dashnowor ...

  4. 带着canvas去流浪系列之七 绘制水球图

    [摘要] 用原生canvasAPI实现百度echarts 示例代码托管在:http://www.github.com/dashnowords/blogs 一. 任务说明 使用原生canvasAPI绘制 ...

  5. v-charts 绘制柱状图、条形图、水球图、雷达图、折线图+柱状图,附官网地址

    v-charts 官网地址:https://v-charts.js.org/#/ 柱状图: <template> <ve-histogram :data="chartDat ...

  6. UML动态模型图简单介绍

    UML动态模型图描述了系统动态行为的各个方面,包括用例图.序列图.协作图.活动图和状态图.下面就每种图做一个简单介绍: 用例图 用例图描述系统外部的执行者与系统提供的用例之间的某种联系.所谓用例是指对 ...

  7. Heatmap.js v2.0 – 最强大的 Web 动态热图

    Heatmap 是用来呈现一定区域内的统计度量,最常见的网站访问热力图就是以特殊高亮的形式显示访客热衷的页面区域和访客所在的地理区域的图示.Heatmap.js 这个 JavaScript 库可以实现 ...

  8. 【BZOJ-2879】美食节 最小费用最大流 + 动态建图

    2879: [Noi2012]美食节 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 1366  Solved: 737[Submit][Status] ...

  9. Python学习-使用matplotlib画动态多图

    最近常常使用matplotlib进行数学函数图的绘制,可是怎样使用matplotlib绘制动态图,以及绘制动态多图.直到今天才学会. 1.參考文字 首先感谢几篇文字的作者.帮我学会了怎样绘制.大家也能 ...

随机推荐

  1. Linux学习--第七天--用户和用户组

    用户和用户组 usermod -a -G groupname username // 将已有用户添加到已有用户组 /etc/passwd michael:x:500:500:CentOS:/home/ ...

  2. python3-使用__slots__

    正常情况下,当我们定义了一个class,创建了一个class的实例后,我们可以给该实例绑定任何属性和方法,这就是动态语言的灵活性.先定义class: class Student(object): pa ...

  3. python碎片化 - 集合set

    集合set:无序,不重复的数据类型 list1={1,2,3,4,5} list2={6,5,4,7,8,9,} list3={1,2,3} s = set([3,5,9,10]) #交集 print ...

  4. easyui自学模板代码

    index.jsp源码 <%@ page language="java" contentType="text/html; charset=UTF-8" p ...

  5. Extjs中如何在一行textfield后面增加文字提示

    添加监听事件: listeners: {               render: function(obj) {                     var font=document.cre ...

  6. day03记 angular代码

    一.AngularJs AngularJS 是一个 JavaScript 框架.通过 指令 扩展了 HTML,且通过 表达式 绑定数据到 HTML. 1.四大特征 MVC模式.模块化.自动化双向数据绑 ...

  7. python+selenium实现经京东登录+购物+支付

    import json from time import sleep from selenium import webdriver import chardet from selenium.webdr ...

  8. delphi 10.3 控件遮挡 webbrowser

    听闻10.3的新特性之一,webbrowser可以被其他控件遮挡, 在等待10.3.1出来后才开始来尝鲜, 但在webbrowser上添加控件后, 发现控件还是被挡住了, 研究发现需要将控件的cont ...

  9. IntelliJ IDEA 开发工具的一些设置

    IntelliJ IDEA 开发工具的一些设置 参考资料 IntelliJ IDEA 的学习,离不开网络上技术热爱者们的分享,在此向他们表示感谢. 成吨提高开发效率:https://github.co ...

  10. shouyexinlianjie

    http://7xj7xs.com1.z0.glb.clouddn.com/trail_1.mp4