echarts 实现分组和显示总数

news2025/2/27 17:13:26

echart 除了能显示坐标轴外,还可以对坐标轴进行分组,可以更直观的观察数
据,本博文记录一下关于分组的探索,先展示一下效果图:

在这里插入图片描述

// 直接复制到echarts官方示例中查看效果
let xAxisData = [];
let data1 = [];
let data2 = [];
let data3 = [];
let data4 = [];
let dataTotal = [];
for (let i = 0; i < 10; i++) {
  xAxisData.push('Class' + i);
  data1.push(+(Math.random() * 2).toFixed(2));
  data2.push(+(Math.random() * 5).toFixed(2));
  data3.push(+(Math.random() + 0.3).toFixed(2));
  data4.push(+Math.random().toFixed(2));
  dataTotal.push((data1[i] + data2[i] + data3[i] + data4[i]).toFixed(2));
}
var emphasisStyle = {
  itemStyle: {
    shadowBlur: 10,
    shadowColor: 'rgba(0,0,0,0.3)'
  }
};
option = {
  legend: {
    data: ['bar', 'bar2', 'bar3', 'bar4'],
    left: '10%'
  },
  tooltip: {
    trigger: 'axis',
    axisPointer: {
      type: 'shadow'
    }
  },
  xAxis: [
    {
      data: xAxisData,
      name: 'X Axis'
    },
    {
      // 将组设置在底部,默认顶部
      position: 'bottom',
      // 偏移距离
      offset: 50,
      axisLine: {
        // 是否显示坐标轴轴线
        show: false
      },
      axisTick: {
        // 刻度线长度
        length: 50,
        inside: true,
        interval: (index, value) => {
          // 坐标轴刻度的显示间隔
          return index === 0 || index === 4 || index === 9;
        }
      },
      axisLabel: {
        textStyle: {
          fontSize: 12
        },
        // 刻度标签是否朝内,默认朝外
        inside: true,
        // 坐标轴刻度标签的显示间隔,强制显示所有标签
        interval: 0,
        // 刻度标签的内容格式器
        formatter: (val, index) => {
          if (val === 'Class1') {
            // 可以使用刻度数值,只能在某个刻度下面
            // 如果有偏移,请使用空格,也可以使用rich
            // return '                 group1';
            return '{centerStyle|group1}';
          } else if (index === 6) {
            // 可以使用索引
            return 'group2';
          } else if (index === 9) {
            return 'group3';
          }
        },
        rich: {
          centerStyle: {
            padding: [0, 0, 0, 60]
          }
        }
      },
      // 与x轴保持一致
      data: xAxisData
    }
  ],
  yAxis: {},
  series: [
    {
      // 象形柱图
      type: 'pictorialBar',
      name: 'Total',
      // 以最大值为基准,做一个直径为1的圆点
      symbolSize: [1, 1],
      symbolPosition: 'end',
      //   设置为透明色
      color: 'transparent',
      z: 2,
      label: {
        normal: {
          // 显示label,即总数
          show: true,
          position: 'top'
        }
      },
      data: dataTotal
    },
    {
      name: 'bar',
      type: 'bar',
      stack: 'one',
      emphasis: emphasisStyle,
      data: data1
    },
    {
      name: 'bar2',
      type: 'bar',
      stack: 'one',
      emphasis: emphasisStyle,
      data: data2
    },
    {
      name: 'bar3',
      type: 'bar',
      stack: 'one',
      emphasis: emphasisStyle,
      data: data3
    },
    {
      name: 'bar4',
      type: 'bar',
      stack: 'one',
      emphasis: emphasisStyle,
      data: data4
    }
  ]
};
myChart.on('brushSelected', function(params) {
  var brushed = [];
  var brushComponent = params.batch[0];
  for (var sIdx = 0; sIdx < brushComponent.selected.length; sIdx++) {
    var rawIndices = brushComponent.selected[sIdx].dataIndex;
    brushed.push('[Series ' + sIdx + '] ' + rawIndices.join(', '));
  }
  myChart.setOption({
    title: {
      backgroundColor: '#333',
      text: 'SELECTED DATA INDICES: \n' + brushed.join('\n'),
      bottom: 0,
      right: '10%',
      width: 100,
      textStyle: {
        fontSize: 12,
        color: '#fff'
      }
    }
  });
});

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

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

相关文章

我的风信共享

登录界面&#xff1a; 管理员可以对所有文章包括管理员发布的文章进行管理&#xff1a; 普通用户只能对自己的文章进行操作; 分类展示&#xff1a; 文章发布功能&#xff1a; 搜索功能&#xff1a;

配电房/变电站可视化智能监控系统方案,助力打造“无人值守”监管模式

一、背景需求分析 配电房管理工作一直是供电系统运行管理可靠性的薄弱环节之一&#xff0c;一些配电房开关跳闸和配电房环境过热影响设备运行、配电房水浸导致设备损坏、配电房设备被盗等&#xff0c;既容易毁坏设备&#xff0c;也容易影响正常用电情况。传统监管方式是通过工…

Nacos 注册中心介绍与实操

前言 本文为个人SpringCloud学习笔记&#xff0c;主要记录Nacos的注册中心实操、SpringBoot多模块编程实操等 注册中心 注册中心介绍 注册中心是微服务的一个重要组件&#xff0c;用于实现服务的注册与发现&#xff0c;主要作用包括以下&#xff1a; 服务注册&#xff1a;…

【从零开始学习Linux】一文带你了解Shell外壳及用户权限(一)

&#x1f6a9;纸上得来终觉浅&#xff0c; 绝知此事要躬行。 &#x1f31f;主页&#xff1a;June-Frost &#x1f680;专栏&#xff1a;Linux入门 &#x1f52d;【从零开始学习Linux】系列均属于Linux入门&#xff0c;主要包含Linux操作系统下的指令、操作、权限以及开发工具&a…

k8s之集群调度

目录 调度 工作机制 调度过程 调度算法 优先级 指定调度节点 调度 Kubernetes 是通过 List-Watch 的机制进行每个组件的协作&#xff0c;保持数据同步的&#xff0c;每个组件之间的设计实现了解耦。 用户是通过 kubectl 根据配置文件&#xff0c;向 APIServer 发送命令…

SandboxAQ推出量子安全“守卫军”!开源框架和加密算法元库Sandwich

Sandwich示意图&#xff08;图片来源&#xff1a;网络&#xff09; 未来几年&#xff0c;IT领域需要对当今计算机通信网络中使用的密码学协议进行一些重大更改&#xff0c;以确保它们仍然安全&#xff0c;且对未来的量子计算机具有应对能力。 其中一个关键特征称为加密敏捷性…

黑芝麻智能助力亿咖通·天穹Pro行泊一体智能驾驶计算平台正式量产

11月1日&#xff0c;亿咖通科技旗下首款智能驾驶计算平台——亿咖通天穹Pro行泊一体智能驾驶平台已向客户开始正式量产交付。亿咖通天穹行泊一体智能驾驶计算平台是亿咖通科技基于黑芝麻智能华山二号A1000&#xff0c;由双方合作研发并推出的具备行泊一体能力的智能驾驶解决方案…

【Linux进程】先谈硬件—冯诺依曼体系结构

目录 冯诺依曼体系 冯诺依曼体系结构 冯诺依曼体系的工作流程 为什么一个程序要运行&#xff0c;必须的先加载到内存中运行? 从软件数据流角度理解冯诺依曼 冯诺依曼体系结构 我们常见的计算机&#xff0c;如笔记本。我们不常见的计算机&#xff0c;如服务器&#xff0c…

信息收集-web架构-源码

一、web架构资产-平台指纹识别-源码 代码审计&#xff0c;从代码中挖掘漏洞&#xff0c;有代码才能做的&#xff0c;没有代码&#xff08;黑盒&#xff09;&#xff0c;有代码&#xff08;白盒&#xff09; 没有源码只能做黑盒&#xff0c;有源码黑白盒都可做 有源码成功率高…

学习笔记二十七:K8S控制器Statefulset入门到企业实战应用

这里写目录标题 Statefulset控制器&#xff1a;概念、原理解读Statefulset资源清单文件编写技巧查看定义Statefulset资源需要的字段查看statefulset.spec字段如何定义&#xff1f;查看statefulset的spec.template字段如何定义 Statefulset使用案例&#xff1a;部署web站点State…

Java 实现灰度图转真彩图

目录 1 问题2 实现1 问题 Java 实现灰度图转真彩图 将以上的图片,jpg png 都可以,转为有颜色的 2 实现 import javax.imageio.ImageIO; import java.awt.*; import java.awt.image.BufferedImage; import java.awt.image.Raster; import java.io.File;public class DatUtil…

k8s之pod进阶---资源限制与探针

目录 一、资源限制 二、探针&#xff08;健康检查&#xff09; 2.1 含义 2.2 探针的三种规则 2.3 probe支持三种检查方法 2.4 探针的示例 1、存活探针&#xff1a;livenessProbe &#xff08;1&#xff09;exec方式 &#xff08;2&#xff09;httpGet方式 &#xff08;…

百度 | 文心一言也开始收费了

好久没用文心一言了 之前一直用ChatGPT的 今天打开文心一言一看&#xff0c;好家伙 出了文心大模型4.0&#xff0c;想体验一下来着 可惜是收费的 看下价格&#xff0c;没买 50块钱一个月&#xff0c;对比ChatGPT4来说&#xff0c;确实不算贵 毕竟gpt4一个月20美刀 &#xff0c;…

CEYEE希亦新品洗地机Pro系列发布, 领跑行业的「水汽混动」技术的旗舰新杰作

CEYEE希亦全新一代洗地机T800 PRO正式上市&#xff0c;采用双滚刷&#xff0c;双倍活水洗拖洗方式&#xff0c;达到拖一遍抵两遍&#xff0c;相对于10倍洁净效果&#xff01; 这款希亦Pro系列产品不仅刷新了洗地机行业技术水准&#xff0c;满足了用户愈发极致的清洁效能追求&a…

小白学习必看,NAS网络存储详细学习

NAS&#xff08;Network Attached Storage&#xff1a;网络附属存储&#xff09;按字面简单说就是连接在网络上&#xff0c;具备资料存储功能的装置&#xff0c;因此也称为“网络存储器”。它是一种专用数据存储服务器。它以数据为中心&#xff0c;将存储设备与服务器彻底分离&…

急诊医学科常用评估量表汇总,建议收藏!

根据急诊医学科医生的量表使用情况&#xff0c;笔者整理了10个急诊医学科常用量表&#xff0c;可在线评测直接出结果&#xff0c;可转发使用&#xff0c;可生成二维码使用&#xff0c;可创建项目进行数据管理&#xff0c;有需要的小伙伴赶紧收藏&#xff01; 1.急性生理学与慢性…

11月的『备考学习计划』+高效的作息时间表 超好用~

每日作息时间表 每天有三个时间段学习效率高 上午10点左右 下午4点左右 晚上8点-10点左右 坚持住了&#xff0c;学习效果事半功倍 有同感的同学 可以举举手&#x1f91a;&#xff0c;点点赞&#x1f493; 每日作息时间表 6:30-7:00起床 6:30---7:00是起床的最佳时刻&am…

报错-TypeError: Cannot read properties of undefined (reading ‘url‘)

背景&#xff1a;使用pinia进行状态管理&#xff0c;优化接口调用请求时&#xff0c;报错 TypeError: Cannot read properties of undefined (reading url) TypeError:无法读取未定义的属性&#xff08;读取“url”&#xff09; 解决&#xff1a;花括号的属性未定义&#xf…

人工智能基础_机器学习013_三种梯度下降对比_线性回归梯度下降更新公式_对梯度下降函数求偏导数_得到---人工智能工作笔记0053

这里批量梯度下降,就是用准备的所有样本数据进行梯度下降计算. 然后小批量梯度下降就是使用比如我一共有500个样本,那么我从中拿出50个样本进行梯度下降计算. 然后随机梯度下降,更厉害, 从一共有500个样本中,随机的取一个样本进行梯度下降计算, 首先我们看批量梯度下降,使用…

如何在 Photoshop 中使用位图模式制作自定义音乐海报

如何在 Photoshop 中使用位图创建炫酷的音乐海报设计。 1.如何设置新的 Photoshop 文件 步骤1 在 Photoshop中&#xff0c;转到 “文件”>“新建”。将文档命名为 “音乐海报”。 将宽度设置 为 1270 px &#xff0c; 高度 设置为 1600 px。将分辨率 设置 为 72 像素/英寸…