极致呈现系列之:Echarts仪表盘的光影奇迹

news2024/9/24 7:24:17

目录

  • 仪表盘介绍
  • 仪表盘的基本结构
  • Echarts仪表盘的常用数据配置项
  • Echarts仪表盘的常用样式配置项
  • 创建基本的仪表盘
  • 自定义仪表盘样式
  • 应用场景

仪表盘介绍

仪表盘通常模拟了传统汽车仪表盘的样式,包括刻度、指针、表盘等元素,用于显示单一指标或数据。它能够直观地传达数据的状态、趋势和相对大小,让用户快速理解数据的意义。

在 ECharts 中,仪表盘是一种用于展示单一指标或数值的图表类型。在 ECharts 中创建仪表盘需要使用相应的配置项,例如指针样式、刻度样式、背景样式等。通过配置这些选项,可以实现自定义的仪表盘样式和交互效果。

ECharts 的仪表盘支持多种类型的指针,包括指针角度、指针长度、指针宽度等的配置。还可以设置刻度的样式、标签的显示和格式化、仪表盘背景的样式等。

使用 ECharts 的仪表盘,可以轻松地将数据转化为仪表盘形式的可视化图表,从而更加直观地理解和分析数据。

仪表盘的基本结构

Echarts仪表盘的基本结构由以下几个关键组件组成:

  1. 仪表盘图表(Gauge Chart): 仪表盘图表是仪表盘的主体部分,用于展示指标的当前数值和相对范围。它通常以圆形或半圆形的形式呈现,可以根据具体需求进行定制化的配置。
  2. 仪表盘系列(Gauge Series): 仪表盘系列是图表中的数据系列,用于描述指标的数值。可以在仪表盘图表中添加多个系列,每个系列代表一个指标。每个系列可以具有不同的样式和配置。
  3. 仪表盘指针(Gauge Pointer): 仪表盘指针指示了当前数值在仪表盘图表上的位置。它可以是一个简单的线条或者是一个复杂的图形,用于直观地表示指标的数值。
  4. 仪表盘轴线(Gauge Axis): 仪表盘轴线是用于标示数值范围的刻度线。它通常包含最小值和最大值的刻度,可以根据需求进行自定义的配置,如设置刻度线的样式、标签的格式等。
  5. 仪表盘指示器(Gauge Indicator): 仪表盘指示器用于标示特定数值点的位置,可以是一个或多个指示器。可以根据需求配置指示器的样式和位置,以便于突出显示重要的数值点。

通过对这些基本组件的配置和调整,我们可以创建具有吸引力和信息丰富的仪表盘图表,以展示和分析指标数据。

Echarts仪表盘的常用数据配置项

在 ECharts 中创建仪表盘时,我们可以使用以下常用数据配置项来定义仪表盘的外观和行为:

  1. series:一个数组,用于定义仪表盘的数据系列。每个数据系列都代表一个指标,并在仪表盘上显示为一个仪表盘图形。我们可以定义多个数据系列以显示不同的指标。
  2. type:指定数据系列的类型为仪表盘。在 ECharts 中,使用'gauge'来表示仪表盘类型的数据系列。
  3. name:为数据系列指定名称,该名称将显示在图例中。
  4. center:定义仪表盘的中心位置,可以通过指定坐标值或百分比来进行配置。例如,['50%', '50%']表示将仪表盘放置在图表容器的中心位置。
  5. radius:定义仪表盘的半径大小,可以通过指定具体数值或百分比来进行配置。例如,'75%'表示仪表盘半径为容器宽度的 75%。
  6. startAngle 和 endAngle:指定仪表盘的起始角度和结束角度,用于控制仪表盘的弧度范围。默认情况下,起始角度为 225 度,结束角度为 -45 度。
  7. min 和 max:定义仪表盘的数据范围。min 表示最小值,max 表示最大值。我们可以根据实际情况设置数据范围,以便仪表盘能够正确显示数据。
  8. splitNumber:指定仪表盘的刻度数量。刻度用于表示数据的不同取值,我们可以根据需要设置刻度的数量。

上面这些是 ECharts 中创建仪表盘时常用的数据配置项。我们可以根据需求调整这些配置项,以实现期望的仪表盘效果。

Echarts仪表盘的常用样式配置项

在 ECharts 中创建仪表盘时,可以使用以下样式配置项来自定义仪表盘的外观:

  1. axisLine:配置仪表盘的轴线样式。
    • lineStyle:定义轴线的样式,包括颜色、宽度和类型。例如,lineStyle: { color: '#eee', width: 8, type: 'solid' }
  2. axisTick:配置仪表盘的刻度样式。
    • length:设置刻度的长度。
    • lineStyle:定义刻度线的样式,包括颜色、宽度和类型。例如,lineStyle: { color: '#aaa', width: 1, type: 'solid' }
  3. axisLabel:定义刻度标签的样式。
    • color:设置刻度标签的字体颜色。
    • fontSize:设置刻度标签的字号。
    • formatter:自定义刻度标签的显示格式。您可以使用回调函数来格式化刻度标签的内容。
  4. pointer:配置指针的样式。
    • length:设置指针的长度。
    • width:设置指针的宽度。
    • color:设置指针的颜色。
  5. title:定义仪表盘的标题样式。
    • text:设置标题的文本内容。
    • textStyle:定义标题文字的样式,包括颜色、字号和字体粗细等。
  6. detail:配置仪表盘的详情区域样式。
    • valueAnimation:设置数值变化的动画效果。
    • formatter:自定义详情区域显示的数值格式。
  7. itemStyle:配置数据项的样式。
    • color:设置数据项的颜色。

上面这些样式配置项可以通过在对应的配置对象中设置相应的属性来实现。例如,对于轴线样式,可以在 axisLine 中设置 lineStyle 属性。类似地,我们可以在其他配置项中设置相应的样式属性来自定义仪表盘的外观。

创建基本的仪表盘

  1. 创建vue项目,安装ECharts库
npm install echarts --save
  1. 新建GaugeView.vue文件,使用import语句引入ECharts库
import * as echarts from 'echarts';
  1. 创建图表容器:在GaugeView组件的template中,添加一个div元素作为图表的容器。给它一个唯一的ref属性,以便在后面初始化图表对象时使用
<template>
  <div ref="chart" style="width: 100%;height: 100vh;"></div>
</template>
  1. 初始化图表对象:在GaugeView组件中定义chart,
const chart = ref(null)

mounted生命周期钩子函数中,使用echarts.init方法初始化图表对象。

<script setup>
import { ref, onMounted } from 'vue'
import * as echarts from 'echarts'
const chart = ref(null)
onMounted(() => {
  const myChart = echarts.init(chart.value) 
})
</script>
  1. 配置图表参数,在GaugeView组件的mounted生命周期钩子函数中,定义option对象,在里面配置图表数据,并使用chart.setOption方法配置图表的参数。我们可以根据ECharts的文档提供的配置选项来设置不同的仪表盘样式和数据。
onMounted(() => {
  const myChart = echarts.init(chart.value)
  const option = {
    series: [
      {
        type: 'gauge',
        data: [{ value: 50, name: '指标名称' }],
        // 其他配置项...
      }
    ]
  }
  myChart.setOption(option)
})

一个简单的仪表盘就创建好了,刷新浏览器,看下效果
在这里插入图片描述

自定义仪表盘样式

下面我们对上面的仪表盘样式进行修改,使其更加美观

  1. 设置背景色
backgroundColor:'#021434', // 设置背景色
  1. 设置轴线样式
axisLine: {
          lineStyle: {
            color: [[0.2, '#ff4500'], [0.8, '#ffa500'], [1, '#90ee90']], // 设置轴线颜色
            width: 8 // 设置轴线宽度
          }
},

在这里插入图片描述
3. 设置刻度线样式

axisTick: {
          length: 12, // 设置刻度线长度
          lineStyle: {
            color: 'auto', // 设置刻度线颜色为自动
            width: 2 // 设置刻度线宽度
          }
 },

在这里插入图片描述
4. 设置刻度标签样式

axisLabel: {
          color: '#fff', // 设置刻度标签颜色
          fontSize: 12 // 设置刻度标签字体大小
},

在这里插入图片描述
5. 设置指针样式

data: [{
          value: 80,
          name: '综合评分', 
          // 指针样式
          itemStyle: {
            color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
              offset: 0,
              color: '#FFD3AC'
            }, {
              offset: 1,
              color: '#FCDC6F'
            }])
          },  
 }],

在这里插入图片描述
6. 设置数值样式

data: [{
          value: 80,
          name: '综合评分', 
          // 指针样式
          itemStyle: {
            color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
              offset: 0,
              color: '#FFD3AC'
            }, {
              offset: 1,
              color: '#FCDC6F'
            }])
          }, 
          detail:{
            // 数值颜色
            color:'#FFFFFF'
          }
}],

在这里插入图片描述
7. 设置标题样式

    title: {
          color: '#FFffFF',
          fontSize: 16,
          fontWeight: 400
 },

在这里插入图片描述
至此,一个漂亮的仪表盘样式已经呈现在了我们的眼前,当然了,里面还有许多样式可以修改,这里只是抛砖引玉,就不详细介绍了,感兴趣的小伙伴可以看官方文档进行深入的研究。

应用场景

  1. 数据监控和实时数据展示:仪表盘可以显示实时的数据指标,例如服务器监控、网络流量、传感器数据等。通过直观的图表和指针,可以方便地监控数据的变化和趋势。
  2. 业务指标分析和仪表盘报表:仪表盘可以用于可视化业务指标和报表,例如销售额、用户增长率、客户满意度等。它能够以图表的形式呈现数据,并支持数据的筛选、排序和对比分析。
  3. 进度和任务管理:仪表盘可以用于显示任务的进度和状态,例如项目进度、任务完成情况等。通过色彩、进度条和指示器等元素,可以清晰地了解任务的完成情况,帮助团队进行项目管理和决策。
  4. 性能监控和优化:仪表盘可以用于监控系统的性能指标,例如CPU使用率、内存占用、响应时间等。通过实时的仪表盘展示,可以快速识别性能瓶颈和问题,并采取相应的优化措施。
  5. 用户行为分析和用户界面设计:仪表盘可以用于分析用户的行为和交互数据,例如网站访问量、点击率、用户行为路径等。通过仪表盘的可视化展示,可以洞察用户行为模式,为用户界面设计和改进提供参考。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/672759.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【JavaWeb】前端之HTML基础认知

目录 1、第一个HTML程序 1.1、创建第一个HTML文件 1.2、HTML文件的基本结构 2、HTML常见标签 2.1、注释标签 2.2、标题标签&#xff1a;h1-h6 2.3、段落标签&#xff1a;p 2.4、换行标签&#xff1a;br 2.5、格式化标签 2.6、图片标签&#xff1a;img 2.7、超链接标签&…

vue源码理解之模板编译和组件化

一&#xff1a;模板编译 1、模板编译的主要目标是将模板(template)转换为渲染函数(render) template > render() 2、模板编译必要性 Vue 2.0需要用到VNode描述视图以及各种交互&#xff0c;手写显然不切实际&#xff0c;因此用户只需编写类似HTML代码的Vue模板&#xff0c;…

扩展卡尔曼滤波在目标跟踪中的应用(2)

上一节的内容中&#xff0c;我们对于扩展卡尔曼EKF算法进行了讲解&#xff0c;今天我们对上一节的内容进行仿真。 话不多说&#xff0c;开整&#xff01;&#xff01;&#xff01; 仿真背景 我们以一个目标的位置信息为例&#xff0c;其状态方程如下所示&#xff1a; X k 0…

黑马程序员前端 Vue3 小兔鲜电商项目——(二)初始化项目

文章目录 了解 Vue3初始化项目创建项目启动项目添加目录Git 管理项目jsconfig.json 配置别名路径 ElementPlus 引入安装配置按需导入测试组件 定制 elementPlus 主题安装sass准备定制化的样式文件自动导入配置 Axios 安装并简单封装安装 Axios基础配置封装请求函数并测试 路由整…

数据血缘分析

引入 做过大数据或者接触过数仓的同学,相信都有听到过数据治理、血缘分析的专业术语。不知道大家有没有思考过以下几个问题: 1、什么是血缘分析?主要分析什么东西? 2、为什么要做血缘分析,主要是为了解决什么痛点?做出来之后有什么价值?如何衡量这些价值? 3、如何做血…

mysql存储过程与函数

文章目录 存储过程概述:创建存储过程调用存储过程存储函数的使用对比存储函数和存储过程存储过程和函数的查看、修改、删除查看修改删除 存储过程概述: 它的思想很简单&#xff0c;就是一组经过 预先编译 的 SQL 语句 的封装。 执行过程&#xff1a;存储过程预先存储在 MySQL …

相对路径与绝对路径(以javaweb项目的html文件为例)

相对路径和绝对路径是用于在文件系统中定位文件或目录的两种方式。 1、两者的概念 绝对路径&#xff1a;是指文件或目录在文件系统中的完整路径&#xff0c;从文件系统的根目录开始一直到文件的具体位置。绝对路径所包含的所有目录都是从根目录开始的&#xff0c;因此&#x…

vue源码理解之Vue批量异步更新和虚拟DOM和Diff算法

一&#xff1a;异步更新队列 1、Vue高效的秘诀是一套批量、异步的更新策略 概念&#xff1a; 事件循环 事件循环&#xff1a;浏览器为了协调事件处理、脚本执行、网络请求和渲染等任务而制定的一套工作机制。 宏任务 代表一个个离散的、独立工作单元。浏览器完成一个宏任务&…

【Visual Studio】Qt 的实时绘图曲线功能,使用 C++ 语言,配合 Qt 开发串口通信界面

知识不是单独的&#xff0c;一定是成体系的。更多我的个人总结和相关经验可查阅这个专栏&#xff1a;Visual Studio。 战斗背景&#xff1a;做了个串口接收界面&#xff0c;用来接收传输过来的信号。但是光用数字显示太单调&#xff0c;需要用图线显示出来。 战略目标&#x…

Java 从入门到精通(续集6)——集合框架

Java 从入门到精通&#xff08;续集6&#xff09;——集合框架 在 Java 中&#xff0c;集合是一种用于存储对象的容器&#xff0c;可以方便地进行增删改查等操作。Java 提供了一套完整的集合框架&#xff0c;并且在 Java 5 中引入了泛型&#xff0c;使得集合变得更加灵活。 一、…

Redis哨兵部署

Redis哨兵 单机安装部署 yum install epel-release -yYum install redis -yMkdir /root/redisCd /root/rediscp /etc/redis.conf .cp redis.conf redis_6379.confcp redis.conf redis_6380.confcp redis.conf redis_6381.conf vim redis_6379.conf 1.配置redis.conf文件中的…

极致呈现系列之:Echarts水球图的灵动魅力

目录 水球图简介什么是水球图水球图的特点和用途水球图的安装和引入水球图的常用配置项创建基本的水球图自定义水球图样式水球图中的shape属性使用SVG代码自定义水球图水球图简介 什么是水球图 水球图是一种通过一个圆形的容器来展示数据的图表类型。它以水球作为图形的基本元…

【C++篇】封装类和对象

友情链接&#xff1a;C/C系列系统学习目录 知识总结顺序参考C Primer Plus&#xff08;第六版&#xff09;和谭浩强老师的C程序设计&#xff08;第五版&#xff09;等&#xff0c;内容以书中为标准&#xff0c;同时参考其它各类书籍以及优质文章&#xff0c;以至减少知识点上的…

【机器学习】十大算法之一 “逻辑回归”

作者主页&#xff1a;爱笑的男孩。的博客_CSDN博客-深度学习,活动,python领域博主爱笑的男孩。擅长深度学习,活动,python,等方面的知识,爱笑的男孩。关注算法,python,计算机视觉,图像处理,深度学习,pytorch,神经网络,opencv领域.https://blog.csdn.net/Code_and516?typeblog个…

MindSpore-FCOS模型权重迁移推理对齐实录

准备工作 环境&#xff1a; wsl2 Ubuntu 20.04 mindspore 2.0.0 python 3.8 pytorch 2.0.1 cpu 基于已有的mindspore FCOS项目和FCOS官方pytorch权重来做迁移&#xff0c; FCOS官方pytorch实现 FCOS_imprv_R_50_FPN_1x权重 MindSpore FCOS项目链接 该代码是mindspore1.6实现…

【加强版】SAX解析XML返回对应格式的Map对象(解决元素递归嵌套)

SAX解析XML返回对应格式的Map对象_辛丑年正月十五的博客-CSDN博客 前言 上篇文章实现了xml元素节点的解析并返回了对应格式的Map对象&#xff0c;但是遗留了一个问题&#xff0c;就是当xml中的元素存在递归嵌套时就解析不了&#xff0c;因为qname属性会重复&#xff0c;导致后…

DDD软件架构领域驱动设计

目录 1. DDD概述1.1 软件开发的困境1.2 DDD的来源及简介1.2.1 DDD设计方法 1.3 DDD解决了什么问题1.3.1 沟通问题1.3.2 代码质量问题 1.4 模型和建模1.4.1 什么是模型 1.5 统一语言&#xff08;UBIQUITOUS LANGUAGE&#xff09;1.6 什么是DDD 2. 传统开发模式2.1 基础知识回顾2…

Debian12.0.0更换系统语言中文到英文

6月10号&#xff0c;Debian12.0.0更新&#xff0c;想尝尝鲜&#xff0c;在虚拟机里安装好&#xff0c;想将中文改为英文&#xff0c;因为Terminal下输入命令&#xff0c;中文切换麻烦。 一、步骤如下 #1、查看当前语言环境 env | grep LANG #2、en表示语言&#xff0c;US表示…

欧科云链在GEF论坛发起圆桌:监管科技与Web3合规发展图景与展望

6月15日&#xff0c;欧科云链在格林威治经济论坛发起了一场题为“监管科技与Web3合规发展图景与展望”的圆桌会议&#xff0c;此次会议由中国香港贸易发展局副执行董事PatrickLau博士主持。Stratford Finance首席执行官Angelina Kwan&#xff0c;BC科技集团有限公司董事会副主席…

[Web前端] Servlet及应用

文章目录 前言1、简介1.1、Servlet 架构1.1.1、Servlet 任务1.1.2、Servlet 包 1.2、Servlet 环境设置1.2.1、设置 Web 应用服务器&#xff1a;Tomcat 1.3、Servlet 生命周期1.3.1、init() 方法1.3.2、service() 方法1.3.3、doGet() 方法1.3.4、doPost() 方法1.3.5、destroy() …