echarts多组堆叠柱状图
一、效果图

二、代码实现
1、创建容器
<el-card class="box-card"><div slot="header" class="clearfix"><span>课堂学习</span></div><div id="class-learning" style="height: 360px"></div></el-card>
2、初始化实例
created () {this.$nextTick(()=>{this.initCharts()});},
getAnalysisData(result){let hasData = result != null && JSON.stringify(result) != '{}';this.initCharts(hasData);},
initCharts(hasData){this.chartInstances.forEach(chart =>{if(chart != null & chart != '' && chart != undefined){chart.dispose();}})this.chartInstances = [echarts.init(document.getElementById('class-learning')).setOption(this.learningOption),]}
3、设置柱状图样式和内容
learningOption : {title: {text: '课堂学习各指标人数分布',left: '49%',textAlign: 'center',},// legend的data内容与series中的数据name名称要保持一致 图例的名称和颜色才会显示legend: {data: ["专注听讲", "认真思考","积极参与","内容掌握度"],bottom: "20px",},xAxis: {type: 'category',data: ['语文', '数学', '英语']},yAxis: {type:'value',// axisLabel: {// show: true,// 显示x轴标签// formatter: `{value}%`,// interval: 0// },// axisTick:{// show: true //不显示坐标轴刻度线// },axisLine: {show: true, //显示坐标轴线},splitLine: { //网格线"show": false},// y轴刻度标签设置 对value整除得到list数组的下标 再显示到y轴标签上axisLabel: {formatter: (value) => {const list = ['差', '较差', '','较好','', '好']return list[value/20]}},},series: [//堆叠柱状图 堆叠在同一个柱子上要设置一样的stack值(可以是数字可以是字符可以是汉字){name: '专注听讲差',type: 'bar',stack: '1',// 鼠标停留时高亮显示 其余内容虚化emphasis: {focus: 'series'},// 柱状图的说明标签显示 标签颜色为黑色 单位为%label: {show: true,color:'black',formatter: '{c}%',//单位},// 柱子带边框itemStyle: {normal: {borderColor:'#fff',borderWidth: 1,}},data: [8,33,12]},{name: '专注听讲',type: 'bar',stack: '1',emphasis: {focus: 'series'},label: {show: true,color:'black',formatter: '{c}%', //单位},itemStyle: {normal: {borderColor:'#fff',borderWidth: 1,}},data: [32,20,32]},{name: '专注听讲较好',type: 'bar',stack: '1',emphasis: {focus: 'series'},label: {show: true,color:'black',formatter: '{c}%', //单位},itemStyle: {normal: {borderColor:'#fff',borderWidth: 1,}},data: [41,26,51]},{name: '专注听讲好',type: 'bar',stack: '1',emphasis: {focus: 'series'},label: {show: true,color:'black',formatter: '{c}%', //单位},itemStyle: {normal: {borderColor:'#fff',borderWidth: 1,}},data: [19,21,5]},// stack值不同 则是另外一个柱子{name: '认真思考差',type: 'bar',stack: '2',emphasis: {focus: 'series'},label: {show: true,color:'black',formatter: '{c}%' //单位},itemStyle: {normal: {borderColor:'#fff',borderWidth: 1,}},data: [15,17,8]},{name: '认真思考',type: 'bar',stack: '2',emphasis: {focus: 'series'},label: {show: true,color:'black',formatter: '{c}%' //单位},itemStyle: {normal: {borderColor:'#fff',borderWidth: 1,}},data: [28,45,26]},{name: '认真思考较好',type: 'bar',stack: '2',emphasis: {focus: 'series'},label: {show: true,color:'black',formatter: '{c}%' //单位},itemStyle: {normal: {borderColor:'#fff',borderWidth: 1,}},data: [34,24,28]},{name: '认真思考好',type: 'bar',stack: '2',emphasis: {focus: 'series'},label: {show: true,color:'black',formatter: '{c}%' //单位},itemStyle: {normal: {borderColor:'#fff',borderWidth: 1,}},data: [23,14,38]},{name: '积极参与差',type: 'bar',stack: '3',emphasis: {focus: 'series'},label: {show: true,color:'black',formatter: '{c}%' //单位},itemStyle: {normal: {borderColor:'#fff',borderWidth: 1,}},data: [22,9,5]},{name: '积极参与',type: 'bar',stack: '3',emphasis: {focus: 'series'},label: {show: true,color:'black',formatter: '{c}%' //单位},itemStyle: {normal: {borderColor:'#fff',borderWidth: 1,}},data: [25,40,46]},{name: '积极参与较好',type: 'bar',stack: '3',// barGap: 10,emphasis: {focus: 'series'},label: {show: true,color:'black',formatter: '{c}%' //单位},itemStyle: {normal: {borderColor:'#fff',borderWidth: 1,}},data: [48,34,35]},{name: '积极参与好',type: 'bar',stack: '3',emphasis: {focus: 'series'},label: {show: true,color:'black',formatter: '{c}%' //单位},itemStyle: {normal: {borderColor:'#fff',borderWidth: 1,}},data: [5,17,14]},{name: '内容掌握度差',type: 'bar',stack: '4',emphasis: {focus: 'series'},label: {show: true,color:'black',formatter: '{c}%' //单位},itemStyle: {normal: {borderColor:'#fff',borderWidth: 1,}},data: [9,22,25]},{name: '内容掌握度',type: 'bar',stack: '4',emphasis: {focus: 'series'},label: {show: true,color:'black',formatter: '{c}%' //单位},itemStyle: {normal: {borderColor:'#fff',borderWidth: 1,}},data: [41,26,25]},{name: '内容掌握度较好',type: 'bar',stack: '4',emphasis: {focus: 'series'},label: {show: true,color:'black',formatter: '{c}%' //单位},itemStyle: {normal: {borderColor:'#fff',borderWidth: 1,}},data: [48,42,35]},{name: '内容掌握度好',type: 'bar',stack: '4',emphasis: {focus: 'series'},label: {show: true,color:'black',formatter: '{c}%' //单位},itemStyle: {normal: {borderColor:'#fff',borderWidth: 1,}},data: [2,10,15]}],color:['#335899','#3f6ab7','#7991ce','#b3bedf','#a0460d','#ed7d31','#f4b183','#f8cbad','#bf9000','#ffc000','#ffd966','#ffe699','#548235','#70ad47','#a9d18e','#c5e0b4']},
相关文章:
echarts多组堆叠柱状图
一、效果图 二、代码实现 1、创建容器 <el-card class"box-card"><div slot"header" class"clearfix"><span>课堂学习</span></div><div id"class-learning" style"height: 360px">&l…...
打造安心宠物乐园:EasyCVR平台赋能猫咖/宠物店的智能视频监控解决方案
随着宠物经济的蓬勃发展,宠物店与猫咖等场所对顾客体验、宠物安全及健康管理的需求日益提升。然而,如何确保这些场所的安全与秩序,同时提升顾客体验,成为了经营者们关注的焦点。引入高效、智能的视频监控方案,不仅能够…...
springboot请求传参常用模板
注释很详细,直接上代码 项目结构 源码 HelloController package com.amoorzheyu.controller;import com.amoorzheyu.pojo.User; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.web.bind.annotation.*;import java.ti…...
HTML/CSS/JS学习笔记 Day4(HTML--C3 表格)
跟着该视频学习,记录笔记:【黑马程序员pink老师前端入门教程,零基础必看的h5(html5)css3移动端前端视频教程】https://www.bilibili.com/video/BV14J4114768?p12&vd_source04ee94ad3f2168d7d5252c857a2bf358 Day4 内容梳理:…...
WPF中创建横向的ListView
在WPF中,要创建横向的ListView,您可以通过设置ItemsControl的ItemsPanel来改变其项的排列方向。以下是一个简单的示例,展示了如何将ListView的项横向排列: 在这个例子中,WrapPanel用于横向排列其子元素,而…...
A表和B表公共元素产生链表C
设A和B是两个单链表(带头节点),其中元素递增有序。设计一个算法从A到B的公共元素产的C表(交集),要求不破坏A,B的节点。 思想:依次比较A,B表中的元素,相同时&…...
Rust运算符
【图书介绍】《Rust编程与项目实战》-CSDN博客 《Rust编程与项目实战》(朱文伟,李建英)【摘要 书评 试读】- 京东图书 (jd.com) https://blog.csdn.net/brucexia/category_12779443.html 前面已经学习了变量和常量,本节开始对它们进行操作,…...
Oracle rman 没有0级时1级备份和0级大小一样,可以用来做恢复 resetlogs后也可以
文档说了 full backup 不能 用于后续的level 1,没说level 1没有level 0 是不是level 1就是level 0? 1级备份变0级的原因 及 Enabling Change Tracking生效没有-CSDN博客 这个文档说明1级备份时没有找到0级就是0级备份,可以用来完整恢复的。…...
idea中配置Translation插件完成翻译功能
文章目录 idea下载插件配置有道云阿里云百度翻译开放平台 idea下载插件 idea中安装Translation插件 使用方法:右下角选择翻译引擎,鼠标选中想翻译的部分,右键翻译即可 之前一直用的微软的翻译,不需要配置,但是最近微软…...
如何看待:低代码开发平台的兴起无需经验?
在当今快速发展的技术时代,软件开发的需求日益增长,而专业开发人员的数量却远远跟不上需求的步伐。为了解决这一矛盾,低代码开发平台应运而生,它通过提供可视化的开发环境和拖拽式的编程方式,使得没有编程经验的用户也…...
OpenCV-轮廓检测
文章目录 一、简介1. 意义2.具体步骤 二、代码实现三、总结 一、简介 1. 意义 在OpenCV中,轮廓检测是图像处理中一个非常重要的环节,它允许我们识别图像中的形状。这个过程通常涉及几个步骤:读取图像、转换为灰度图、应用阈值处理ÿ…...
vue页面使用自定义字体
一、准备好字体文件 一般字体问价格式为 .tff,可以去包图网等等网站去下载,好看的太多了!!! 下载下来就是单个的 .tff文件,下载下来后可以进行重命名,但是不要改变他的后缀名,我把他…...
C++——list常见函数的使用和模拟实现(2)
在list的上一篇博客里实现了list基本的初始化、插入数据、删除数据的基本功能,这些功能的实现方式只是在原先链表的实现里加入了模版而已,但是list作为一个容器,它还有一个基础的东西——迭代器。list的迭代器和之前实现的string和vector很大…...
C 标准库 - `<float.h>`
C 标准库 - <float.h> 概述 <float.h> 是 C 标准库中的一个头文件,它定义了与浮点数类型相关的宏。这些宏提供了关于浮点数的属性信息,如精度、最小和最大值、以及舍入误差等。这个头文件对于需要精确控制浮点数行为的程序非常有用&#x…...
【机器人工具箱Robotics Toolbox开发笔记(二)】Matlab中机器人工具箱的下载与安装
Matlab机器人工具箱(Robotics Toolbox)可从Peter Corke教授提供的网站上免费下载。网址为:http://www.petercorke.com/Robotics_Toolbox.html。 图1 网站所提供的机器人工具箱版本 在Downloading the Toolbox栏目中单击here按钮进入下载页面,然后在该页面中填写国家、组织…...
ROS2 Nav2 - Smac 规划器
系列文章目录 前言 SmacPlanner 是 Nav2 Planner 服务器的插件。它目前包括 3 个不同的插件: SmacPlannerHybrid:高度优化的完全可重新配置的 Hybrid-A* 实现,支持 Dubin 和 Reeds-Shepp 模型(足式、阿克曼和汽车模型)…...
LabVIEW环境中等待FPGA模块初始化完成
这个程序使用的是LabVIEW环境中的FPGA模块和I/O模块初始化功能,主要实现等待FAM(Field-Programmable Gate Array Module,FPGA模块)的初始化完成,并处理初始化过程中的错误。让我们逐步分析各部分的功能: 1.…...
手机TF卡格式化后数据恢复:方法、挑战与预防措施
在现代生活中,手机已经成为我们不可或缺的一部分,而TF卡(即MicroSD卡)作为手机存储的扩展,更是承载了我们大量的重要数据。然而,不慎的格式化操作往往导致数据丢失,给用户带来不…...
ceph对象存储使用的一些思考
导言 我在某司做对象存储约4年时间,作为研发人员,接触过大量的市场项目,对国内市场上对对象存储的使用有一些了解和思考。本文主要是对本人经历的过往对象存储项目中发现的一些问题进行总结。 背景如下: 基于ceph版本进行开发并进…...
单词排序C++实现
代码如下: #include<iostream> #include<string> #include<fstream> #include<map> #include<iomanip> #include<algorithm> #include<vector>int read_file(std::map<std::string,int> &map_words) {std::st…...
Cursor Pro破解工具:5步实现永久免费使用的完整指南
Cursor Pro破解工具:5步实现永久免费使用的完整指南 【免费下载链接】cursor-free-vip [Support 0.45](Multi Language 多语言)自动注册 Cursor Ai ,自动重置机器ID , 免费升级使用Pro 功能: Youve reached your trial…...
产品兼容性实战:硬件与软件设计的平衡艺术与工程策略
1. 产品兼容性:一个永恒的工程与商业困境在硬件开发,尤其是数据采集、测试测量这类领域里,产品经理和工程师们几乎每天都在面对一个看似无解的难题:新产品的功能要向前狂奔,但老用户的兼容性需求却像一根锚,…...
Cangaroo:开源CAN总线分析软件的技术架构与部署指南
Cangaroo:开源CAN总线分析软件的技术架构与部署指南 【免费下载链接】cangaroo Open source can bus analyzer software - with support for CANable / CANable2, CANFD, and other new features 项目地址: https://gitcode.com/gh_mirrors/ca/cangaroo Cang…...
玩转OurBMC第二十六期:OpenBMC固件远程更新原理与实践(下)
栏目介绍:“玩转OurBMC” 是OurBMC社区开创的知识分享类栏目,主要聚焦于社区和BMC全栈技术相关基础知识的分享,全方位涵盖了从理论原理到实践操作的知识传递。OurBMC社区将通过 “玩转OurBMC” 栏目,帮助开发者们深入了解到社区文…...
一句话就能“劫持”你的AI?DZS 分层式自适应提示词注入攻击的防御机制框架 (HAA)来了!
本文所展示的提示词技术已在Research square 发表论文预印本。DOI:https://doi.org/10.21203/rs.3.rs-9653510/v1 作者“抖知书(douzhishu),涉及到相关测试数据是本人自行测试的,并未通过多专家评审,所以仅…...
告别MATLAB命令行里的‘天书’:手把手教你用symdisp优雅展示LaTeX公式
MATLAB符号计算可视化革命:用symdisp实现LaTeX级公式渲染 在科研和工程计算领域,MATLAB的符号计算工具箱一直是数学推导的利器,但长期以来,命令行输出的公式展示方式让许多研究者头疼——密密麻麻的文本表达式不仅难以直观理解&am…...
LENS多模态模型评估实战:从模块消融到失败案例的深度剖析
1. 项目概述:从评估报告到实战指南最近在复现和深入分析LENS这个多模态模型时,我发现原始论文的补充材料虽然数据详实,但更像一份“内部技术报告”,对于想真正理解其能力边界、复现评估过程,甚至想借鉴其架构思路的同行…...
Windows键盘记录器:为什么需要、它是什么、以及如何正确使用
Windows键盘记录器:为什么需要、它是什么、以及如何正确使用 【免费下载链接】keylogger Keylogger for Windows. 项目地址: https://gitcode.com/gh_mirrors/keylogg/keylogger 在当今数字化时代,键盘记录器作为系统监控和用户行为分析工具&…...
BIOSTAR映泰主板重装Win7翻车记:从U盘启动到鼠标失灵,我踩过的坑都在这了
BIOSTAR主板Win7重装实战指南:从启动设置到驱动修复全解析 老张上周给工作室那台老机器重装系统,本以为半小时能搞定的事,硬是折腾了一整天。BIOSTAR TA970主板配上Win7系统,从U盘启动识别失败到安装后鼠标失灵,几乎踩…...
DataX实战避坑:手把手教你用Shell脚本搞定MySQL多表同步(附完整脚本)
DataX多表同步实战:从脚本优化到生产级部署的全链路指南 MySQL数据同步是数据仓库建设中的基础环节,而DataX作为阿里巴巴开源的高效数据同步工具,在实际生产环境中却常常因为脚本设计不当导致维护成本激增。本文将从一个真实电商平台的订单系…...
