【若依前后端分离】仪表盘绘制

devtools/2024/9/24 12:45:08/

示例:

代码:

 InstrumentPanel.vue组件

<template><div><!-- 在这里放置你的图表组件 --><div ref="echarts" style="width: 100%; height: 400px;"></div></div>
</template><script>
export default {name: 'instrumentPanel',props: {data: {type: Object,required: true}},// data() {//   return {//     value: 12,//     text: "温度"//   };// },mounted() {this.renderChart();},methods: {renderChart() {const echarts = require('echarts');const myChart = echarts.init(this.$refs.echarts);const option = {//提示框浮层的位置,默认不设置时位置会跟随鼠标的位置。tooltip: {// 相对位置,放置在容器正中间position: ['50%', '50%'],formatter: "{a} <br/>{b} : {c}%"},series: [{name: "仓库信息",type: "gauge",//仪表盘min: -10,//最小值max: 60,//最大值// 设置成相对的百分比,中心(圆心)坐标center: ['50%', '50%'],//仪表盘半径,可以放大radius: '90%',//仪表盘起始角度startAngle: 225,//仪表盘结束角度。endAngle: -45,// 分割线的数量splitNumber: 20,//仪表盘详情,用于显示数据。detail: {show: true,formatter: this.data.text+"\n\n"+this.data.value + "℃",textStyle: {color: 'auto',fontSize: 40},offsetCenter: [0, '50%'],fontStyle:'normal',//italic 文字字体的风格。fontWeight:'bold',fontSize:40,},//仪表盘轴线相关配置。axisLine: {//是否在两端显示成圆形。roundCap: true,//仪表盘轴线样式。lineStyle: {//表盘宽度width: 25,//color[i][0] 的值代表整根轴线的百分比,应在 0 到 1 之间;color[i][1] 是对应的颜色。color: [[0.2, '#008FFF'],[0.3, '#00A2E8'],[0.4, '#00C3CD'],[0.5, '#00E7BB'],[0.6, '#00E79F'],[0.7, '#8CDC00'],[0.8, '#FFD306'],[0.9, '#FFB700'],[1, '#FF7D00']],//刻度样式。axisTick: {length: 12,lineStyle: {color: 'auto',}},pointer: {width: 5,length: '80%',shadowColor: '#ccc', //默认透明shadowBlur: 5,shadowOffsetX: 3,shadowOffsetY: 3},//图形阴影的模糊大小。会变立体shadowColor: 'rgba(0, 0, 0, 0.5)',shadowBlur: 10,//阴影水平方向上的偏移距离shadowOffsetX: 8,//阴影垂直方向上的偏移距离。shadowOffsetY: 8,opacity: 0.8,},//展示当前进度。progress: {show: true,//进度条样式。itemStyle: {borderType: [5, 10],borderDashOffset: 5}},//分隔线样式。splitLine: {//分隔线线长。支持相对半径的百分比length: 20,distance:20,lineStyle: {color: 'auto',}},title: {show: true,offsetCenter: [0, '-30%'],textStyle: {color: '#333',fontSize: 30}},axisLabel:{show:true},},tooltip: {trigger:'item',},animationDuration: 4000, // 仪表盘动画时间data: [{title: "标题",value: this.data.value,// name: this.text}]}]};myChart.setOption(option);}}
};
</script><style>
/* 这里可以添加样式 */
</style>

主页面调用:

  <el-row :gutter="32"><el-col :xs="24" :sm="24" :lg="12"><div class="chart-wrapper"><instrument-panel :data="temperatureData"/></div></el-col><el-col :xs="24" :sm="24" :lg="12"><div class="chart-wrapper"><instrument-panel :data="humidityData"/></div></el-col></el-row>

<script>
//引用
import InstrumentPanel  from "@/views/dashboard/InstrumentPanel";export default {name: 'Index',
//数据data() {return {//温度信息temperatureData: {value:25.4,text:"温度",},//湿度信息humidityData: {value: 22.5,text: "湿度",},}},
}
</script>


http://www.ppmy.cn/devtools/9366.html

相关文章

混杂设备驱动

混杂设备驱动 之前我们编写的是标准字符设备驱动程序,看起来还是有点复杂的样子。linux内核api接口提供了一种混杂设备驱动程序框架,可以大幅度降低编写字符设备驱动程序复杂性。 misc的意思是混合、杂项的,因此 misc 驱动也叫做杂项驱动,misc 驱动其实就是最简单的字符设…

.NET Core中间件管道MAP的作用和使用

在ASP.NET Core中&#xff0c;中间件是构建HTTP请求管道的基本组件。中间件组件负责在ASP.NET Core应用程序中处理请求和响应。中间件可以执行多种任务&#xff0c;例如身份验证、记录、异常处理等。你可以按顺序将多个中间件组件组合在一起&#xff0c;形成一个请求处理管道。…

vue3【实用教程】侦听器 watch,自动侦听 watchEffect(),$watch,手动停止侦听器

watch 侦听明确指定的状态变化执行回调 实战场景 侦听路由传参的变化&#xff0c;重新访问接口&#xff0c;刷新页面侦听接口返回值的变化&#xff0c;刷新页面 侦听值类型数据 // 选项式 API watch: {// 每当 question 改变时&#xff0c;这个函数就会执行question(newQue…

vue2 mixins混入

在Vue2中&#xff0c;使用mixins混入有两种方式&#xff1a; 全局混入&#xff1a;在Vue实例初始化之前&#xff0c;使用Vue.mixin()方法进行全局混入。具体步骤如下&#xff1a; 在main.js&#xff08;或其他入口文件&#xff09;中引入Vue和混入对象&#xff1a;import Vue f…

在Vue3中如何使用H.265视频流媒体播放器EasyPlayer.js?

H5无插件流媒体播放器EasyPlayer属于一款高效、精炼、稳定且免费的流媒体播放器&#xff0c;可支持多种流媒体协议播放&#xff0c;可支持H.264与H.265编码格式&#xff0c;性能稳定、播放流畅&#xff0c;能支持WebSocket-FLV、HTTP-FLV&#xff0c;HLS&#xff08;m3u8&#…

CentOS 7安装、卸载MySQL数据库(一)

说明&#xff1a;本文介绍如何在CentOS 7操作系统下使用yum方式安装MySQL数据库&#xff0c;及卸载&#xff1b; 安装 Step1&#xff1a;卸载mariadb 敲下面的命令&#xff0c;查看系统mariadb软件包 rpm -qa|grep mariadb跳出mariadb软件包信息后&#xff0c;敲下面的命令…

v-for中涉及的key

一、为什么要用key&#xff1f; key可以标识列表中每个元素的唯一性&#xff0c;方便Vue高效地更新虚拟DOM&#xff1b;key主要用于dom diff算法&#xff0c;diff算法是同级比较&#xff0c;比较当前标签上的key和标签名&#xff0c;如果都一样&#xff0c;就只移动元素&#…

爱尔兰启动其首个量子技术国家战略“量子 2030”

内容来源&#xff1a;量子前哨&#xff08;ID&#xff1a;Qforepost&#xff09; 文丨王珩 排版丨沛贤 800字丨5分钟阅读 摘要&#xff1a;爱尔兰推出了“量子 2030”&#xff0c;这是爱尔兰第一个量子技术国家战略。“量子 2030”将爱尔兰量子技术界的努力重点放在爱尔兰可以…