Vue框架下怎么用Echarts仪表盘,步骤和效果是怎样的
Admin 2022-07-13 群英技术资讯 1295 次浏览
今天这篇给大家分享的知识是“Vue框架下怎么用Echarts仪表盘,步骤和效果是怎样的”,小编觉得挺不错的,对大家学习或是工作可能会有所帮助,对此分享发大家做个参考,希望这篇“Vue框架下怎么用Echarts仪表盘,步骤和效果是怎样的”文章能帮助大家解决问题。在vue中echarts仪表盘实时数据
彩笔一枚,简单记录一下。
业务场景:通过websocket实时推送数据,将数据渲染到仪表盘中。
第一步:
基于准备好的dom,初始化echarts仪表盘实例。
第二步:
我是通过父子组件传值把数据接收过来,在data中定义upPressure参数,并将接收来的devicePressure参数赋值给它,便于后面将值传入到echarts中
父组件中
<div class="chart" shadow="always">
<objEcharts :devicePressure="pressure"></objEcharts>
</div>
子组件中
export default {
props: {
devicePressure: { type: String, require: true },
},
data() {
return {
upPressure: this.devicePressure,
};
},
第三步:
因为是实时数据,就需要在watch中监听数据变化,实时更新。
注:这里我只监听一个参数变化,没有使用deep: true。
watch: {
//监听devicePressure的数据变化。
devicePressure(newData, oldData) {
//把更新后的数据newData,赋值给需要传入echarts中的参数。
this.upPressure = newData;
//一定要调用echarts实例,要不然echarts不实时展示。
this.drawLine();
},
},
第四步:
数据处理完之后,就要把它展示到仪表盘中了,所以直接找到echarts中需要数据的地方就好了。
介于仪表盘样式,可结合官方文档自定义。
export default {
props: {
devicePressure: { type: String, require: true },
},
data() {
return {
upPressure: this.devicePressure,
};
},
mounted() {
this.drawLine();
},
watch: {
devicePressure(newData, oldData) {
this.upPressure = newData;
this.drawLine();
},
},
methods: {
drawLine() {
// 基于准备好的dom,初始化echarts实例
let visualOneChart = this.$echarts.init(document.getElementById("visualOneChart"));
// 绘制图表
visualOneChart.setOption({
tooltip: {
formatter: "{a} <br/>{b} : {c}Pa",
},
series: [
{
name: "压力值",
type: "gauge",
clockwise: true,
detail: {
formatter: this.upPressure,
textStyle: {
fontSize: 14,
},
},
data: [{ value: this.upPressure, name: "压力值" }],
radius: "90%",
axisLabel: {// 刻度标签。
show: true,
distance: -5,
color: "black",
fontSize: 10,
formatter: "{value}",
},
axisLine: {// 仪表盘轴线(轮廓线)相关配置。
show: true,
lineStyle: {// 仪表盘轴线样式。
opacity: 1,
width: 15,
shadowBlur: 10,
},
},
pointer: { // 仪表盘指针。
show: true,
length: "70%",
width: 4,
},
},
],
});
},
},
}

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
Node如何实现数据传输加密解密?下面本篇文章给大家介绍一下Node.js实现前后端数据传输加密解密的方法,希望对大家有所帮助!
这篇文章主要给大家分享的是关于react的setstate的内容,对于setstate是同步还是异步的问题,一些朋友可能不是理解,对此我们通过示例来了解一下,感兴趣的朋友就继续往下看吧。
怎样用JS实现复选框的全选功能?复选框的全选功能便于多选操作,也是比较实用的一个功能,对此这篇文章就给大家分享JS实现复选框的全选的代码,感兴趣的朋友就接着往下看吧。
这篇文章给大家分享的是vuex中刷新数据消失的问题的解决方法,下文有具体的问题分析、解决思路及方法,文中示例代码介绍的非常详细,感兴趣的朋友接下来一起跟随小编看看吧。
JavaScript字符串转数字怎样做?在实际的项目中,常需要实现数据类型转换,对此本文就给大家简单的介绍一下字符串转数字的方法,对新手学习JavaScript数据类型转换有一定的帮助,接下来我们一起看看吧。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008