vue echarts画多柱状图+多折线图

news2024/12/25 23:33:12

<!--多柱状图+折线图-->
<div class="echarts-box" id="multiBarPlusLine"></div>

import * as echarts from 'echarts';

mounted() {
  this.getMultiBarPlusLine()
},

    getMultiBarPlusLine() {
      const container = document.getElementById('multiBarPlusLine'); // 获取容器元素
      if (this.echartsMultiBarPlusLineDom) {
        this.echartsMultiBarPlusLineDom.dispose(); // 清空之前的实例(如果需要)
      }
      this.echartsMultiBarPlusLineDom = echarts.init(container); // 初始化echarts实例

      let option = {
        tooltip: {
          trigger: 'axis',
          axisPointer: {
            type: 'cross',
            crossStyle: {
              color: '#999'
            }
          }
        },
        toolbox: {
          feature: {
            dataView: { show: true, readOnly: false },
            magicType: { show: true, type: ['line', 'bar'] },
            restore: { show: true },
            saveAsImage: { show: true }
          }
        },
        legend: {
          data: ['2023-12-09 10:21 小一班', '2023-12-09 10:21 小二班', '2023-12-09 10:21 小三班']
        },
        xAxis: [
          {
            type: 'category',
            data: ['第1轮', '第2轮', '第3轮', '第4轮'],
            axisPointer: {
              type: 'shadow'
            }
          }
        ],
        yAxis: [
          {
            type: 'value',
            name: '次数',//左右两侧的title
            min: 0,
            max: 80,
            interval: 20,
            axisLabel: {
              formatter: '{value} 次'
            }
          },
          {
            type: 'value',
            name: '总用时',//左右两侧的title
            min: 0,
            max: 800,
            interval: 200,
            axisLabel: {
              formatter: '{value} s'
            }
          }
        ],
        series: [
          {
            name: '2023-12-09 10:21 小一班',
            type: 'bar',
            barMaxWidth: 50,
            tooltip: {
              valueFormatter: function (value) {
                return value + ' 次';
              }
            },
            data: [10, 49, 70, 23]
          },
          {
            name: '2023-12-09 10:21 小二班',
            type: 'bar',
            barMaxWidth: 50,
            tooltip: {
              valueFormatter: function (value) {
                return value + ' 次';
              }
            },
            data: [6, 59, 80, 64]
          },
          {
            name: '2023-12-09 10:21 小三班',
            type: 'bar',
            barMaxWidth: 50,
            tooltip: {
              valueFormatter: function (value) {
                return value + ' 次';
              }
            },
            data: [26, 59, 80, 64]
          },
          {
            name: '2023-12-09 10:21 小一班',
            type: 'line',
            yAxisIndex: 1,
            tooltip: {
              valueFormatter: function (value) {
                return value + ' s';
              }
            },
            data: [300, 120, 53, 25]
          },
          {
            name: '2023-12-09 10:21 小二班',
            type: 'line',
            yAxisIndex: 1,
            tooltip: {
              valueFormatter: function (value) {
                return value + ' s';
              }
            },
            data: [600, 220, 530, 255]
          },
          {
            name: '2023-12-09 10:21 小三班',
            type: 'line',
            yAxisIndex: 1,
            tooltip: {
              valueFormatter: function (value) {
                return value + ' s';
              }
            },
            data: [800, 120, 530, 205]
          },          
        ]
      };

      this.echartsMultiBarPlusLineDom.setOption(option);
      //随着屏幕大小调节图表
      window.addEventListener('resize', () => {
        this.echartsMultiBarPlusLineDom.resize();
      });
    },

    getMultiBarPlusLine() {
      const container = document.getElementById('multiBarPlusLine'); // 获取容器元素
      if (this.echartsMultiBarPlusLineDom) {
        this.echartsMultiBarPlusLineDom.dispose(); // 清空之前的实例(如果需要)
      }
      this.echartsMultiBarPlusLineDom = echarts.init(container); // 初始化echarts实例

      let obar = [
        {
          name: '2023-12-09 10:21 小一班',
          type: 'bar',
          barMaxWidth: 50,
          tooltip: {
            valueFormatter: function (value) {
              return value + ' 次';
            }
          },
          data: [10, 49, 70, 23]
        },
        {
          name: '2023-12-09 10:21 小二班',
          type: 'bar',
          barMaxWidth: 50,
          tooltip: {
            valueFormatter: function (value) {
              return value + ' 次';
            }
          },
          data: [6, 59, 80, 64]
        },
        {
          name: '2023-12-09 10:21 小三班',
          type: 'bar',
          barMaxWidth: 50,
          tooltip: {
            valueFormatter: function (value) {
              return value + ' 次';
            }
          },
          data: [26, 59, 80, 64]
        },
      ]

      let oline = [
        {
          name: '2023-12-09 10:21 小一班',
          type: 'line',
          yAxisIndex: 1,
          tooltip: {
            valueFormatter: function (value) {
              return value + ' s';
            }
          },
          data: [300, 120, 53, 25]
        },
        {
          name: '2023-12-09 10:21 小二班',
          type: 'line',
          yAxisIndex: 1,
          tooltip: {
            valueFormatter: function (value) {
              return value + ' s';
            }
          },
          data: [600, 220, 530, 255]
        },
        {
          name: '2023-12-09 10:21 小三班',
          type: 'line',
          yAxisIndex: 1,
          tooltip: {
            valueFormatter: function (value) {
              return value + ' s';
            }
          },
          data: [800, 120, 530, 205]
        },
      ]

      let option = {
        tooltip: {
          trigger: 'axis',
          axisPointer: {
            type: 'cross',
            crossStyle: {
              color: '#999'
            }
          }
        },
        grid: {
          top: '30',
          left: '60',
          right: '260',
          bottom: '60'
        },
        legend: {
          data: ['2023-12-09 10:21 小一班', '2023-12-09 10:21 小二班', '2023-12-09 10:21 小三班'],
          orient: 'vertical', // 垂直布局
          top: 'middle', // 垂直布局
          left: 'right', // 右侧位置
        },
        xAxis: [
          {
            type: 'category',
            data: ['第1轮', '第2轮', '第3轮', '第4轮'],
            axisPointer: {
              type: 'shadow'
            }
          }
        ],
        yAxis: [
          {
            type: 'value',
            name: '次数',//左右两侧的title
            min: 0,
            max: 80,
            interval: 20,
            axisLabel: {
              formatter: '{value} 次'
            }
          },
          {
            type: 'value',
            name: '总用时',//左右两侧的title
            min: 0,
            max: 800,
            interval: 200,
            axisLabel: {
              formatter: '{value} s'
            }
          }
        ],
        series: [...obar, ...oline]
      };

      this.echartsMultiBarPlusLineDom.setOption(option);
      //随着屏幕大小调节图表
      window.addEventListener('resize', () => {
        this.echartsMultiBarPlusLineDom.resize();
      });
    },

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

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

相关文章

MathType软件下载2024最新版_MathType官方免费下载附加详细安装步骤

MathType(数学公式编辑器)是由Design Science公司研发的一款专业的数学公式编辑工具。MathType功能非常强大&#xff0c;尤其适用于专门研究数学领域的人群使用。使用MathType让你在输入数学公式的时候能够更加的得心应手&#xff0c;各种复杂的运算符号也不在话下。 安 装 包 …

氢气传感器:呼吸疾病的隐形向导

​ ​​在医学领域&#xff0c;每一次技术革新都可能成为疾病诊断与治疗的新曙光。氢气传感器&#xff0c;这一看似不起眼的装置&#xff0c;正逐渐成为辅助诊断呼吸系统疾病的关键工具。它如同一位精准的侦探&#xff0c;穿梭于呼吸的微风中&#xff0c;捕捉着那些可能预示…

sheng的学习笔记-AI-集成学习(adaboost,bagging,随机森林)

ai目录&#xff1a;sheng的学习笔记-AI目录-CSDN博客 目录​​​​​​​ 集成学习 什么是集成学习 集成学习一般结构&#xff1a; 示意图 弱学习器 经典算法 Boosting 什么是boosting 方法图 AdaBoost 算法 AdaBoost示意图 流程解析&#xff1a; 错误分类率error…

「Qt Widget中文示例指南」如何实现一个滑动条(一)

Qt 是目前最先进、最完整的跨平台C开发工具。它不仅完全实现了一次编写&#xff0c;所有平台无差别运行&#xff0c;更提供了几乎所有开发过程中需要用到的工具。如今&#xff0c;Qt已被运用于超过70个行业、数千家企业&#xff0c;支持数百万设备及应用。 滑动条示例展示了如…

618在即!「企业商城」作战攻略曝光,解锁电商化采购新模式

“618”购物狂欢大促即将到来&#xff0c;凡是大促&#xff0c;必为商机。 当前&#xff0c;618正在成为拉动品牌销量增长的重要战役&#xff0c;这已经是很多商家的共识。 网上商城交易采购组织形式公开透明、成本低、效率高的优势凸显&#xff0c;逐渐成为各企业采购的主流模…

苹果电脑压缩视频的软件,苹果电脑怎么压缩视频文件大小

在数字时代的浪潮中&#xff0c;视频已成为我们日常生活和工作中不可或缺的一部分。然而&#xff0c;视频文件的大小也在不断攀升&#xff0c;给存储和传输带来了不小的挑战。因此&#xff0c;视频压缩技术应运而生&#xff0c;成为解决这一问题的关键。本文将详细介绍视频压缩…

Java17 --- redis7缓存双写一致性

一、缓存双写一致性 如果redis中有数据&#xff1a;需要和数据库中的值相同。如果redis中没有数据&#xff1a;数据库中的值要是最新值&#xff0c;且准备回写redis。只读缓存。读写缓存&#xff1a;①、同步直写策略&#xff1a;写数据库后也同步写redis缓存&#xff0c;缓存…

ChatGPT的问题与回复的内容导出(Chorme)

我给出两种方式&#xff0c;第一种方式无使用要求&#xff0c;第二种方式必须安装Chorme 个人更推荐第二种方式 第一种方式&#xff1a;使用chatgpt自带的数据导出 缺点&#xff1a;会将当前未归档的所有聊天记录导出&#xff0c;发送到你的电子邮箱中 第二种方式&#xff1a…

C语言 | Leetcode C语言题解之第155题最小栈

题目&#xff1a; 题解&#xff1a; //单调栈 单调递减 typedef struct {//正常 stackint stack[10000];int stackTop;//辅助 stackint minStack[10000];int minStackTop; } MinStack;MinStack* minStackCreate() {MinStack* newStack (MinStack *) malloc(sizeof(MinS…

【Git】多人协作 -- 详解

一、多人协作&#xff08;1&#xff09; ⽬前&#xff0c;我们所完成的工作如下&#xff1a; 基本完成 Git 的所有本地库的相关操作&#xff0c;git 基本操作&#xff0c;分支理解&#xff0c;版本回退&#xff0c;冲突解决等等。 申请码云账号&#xff0c;将远端信息 clone…

C++通过VS2022使用Conan2.0安装fmt库实现控制台彩色打印

Conan是一个开源的C/C包管理器&#xff0c;用于管理和构建C/C项目的依赖关系。它允许开发人员轻松地集成第三方库、工具和资源到他们的项目中&#xff0c;并管理这些依赖项的版本、构建选项和配置。 Conan官方提供了对应的VS2022扩展插件&#xff0c;通过这个插件再搭配VS2022…

路由控制和策略路由

文章目录 一、路由控制&#xff08;1&#xff09;、前言1.1.1-路由策略 &#xff08;2&#xff09;、正反掩码和通配符1.2.1-通配符 &#xff08;3&#xff09;、ACL1.3.1-ACL步长1.3.2-步长的作用1.3.3-TCP/UDP端口号 实验1:实验2: 二、前缀列表实验1:2.1.1-前缀列表的表达式2…

一平台一张图,撑起危化生产“安全伞”

安全生产是永恒的主题&#xff0c;是一切工作的基础。 风险辨识不到位、特种作业不合规、隐患治理不彻底、应急能力不匹配……如何从消除事故隐患、从根本上解决问题&#xff1f;随着新一代信息技术和安全生产的深度融合&#xff0c;安全生产的管理方式也在发生深刻变化。 提前…

SQL Server入门-SSMS简单使用(2008R2版)-1

环境&#xff1a; win10&#xff0c;SQL Server 2008 R2 参考&#xff1a; SQL Server 新建数据库 - 菜鸟教程 https://www.cainiaoya.com/sqlserver/sql-server-create-db.html 第 2 课&#xff1a;编写 Transact-SQL | Microsoft Learn https://learn.microsoft.com/zh-cn/…

百数私有化本地部署技术解析,附带独家优惠政策

数据驱动的时代&#xff0c;数据安全性对于每个企业来说都至关重要。私有化本地部署作为一种高效的数据管理方式&#xff0c;越来越受到企业的青睐。然而&#xff0c;高昂的部署费用常常让企业望而却步。 作为一家深耕办公领域10年的低代码公司&#xff0c;百数以本地化部署起…

监控局域网电脑屏幕的办法,最简单的三种方法,好用!

在现代企业管理和家庭教育环境中&#xff0c;对局域网内电脑屏幕进行有效监控成为了保障信息安全、提升工作效率和监督行为规范的重要手段。 监控局域网电脑屏幕不仅可以帮助管理者了解员工的工作状态&#xff0c;确保资源的合理使用&#xff0c;还能在一定程度上预防潜在的网…

AI绘画Stable Diffusion 挽救渣图的神器—Loopback Scaler脚本,你值得拥有!

大家好&#xff0c;我是向阳 今天这篇文章就是围绕着开局的这两张原图开始的。 在Stable diffusion甚至当前所有的AI画图工具里面&#xff0c;AI生成内容随机性都是一个很大的问题。 我们经常遇到一张图构图不错但是脸崩了&#xff0c;又或者人物形象不错但是背景画得崩了这…

海南云亿商务咨询有限公司抖店开店怎么样?

在数字化浪潮席卷全球的今天&#xff0c;电商行业日新月异&#xff0c;其中抖音电商以其独特的短视频直播模式&#xff0c;迅速崛起成为电商领域的新贵。海南云亿商务咨询有限公司&#xff0c;作为抖音电商服务的佼佼者&#xff0c;凭借专业的团队和丰富的经验&#xff0c;致力…

人体关键点检测-基于Gradio完成应用开发

前言 本次分享将带领大家从 0 到 1 完成一个人体姿态估计任务&#xff0c;覆盖数据准备、模型训练、推理部署和应用开发的全流程&#xff0c;项目将采用以PaddlePaddle为核心的飞桨深度学习框架进行开发&#xff0c;并总结开发过程中踩过的一些坑&#xff0c;希望能为有类似项…

通过nginx转发后应用偶发502bad gateway

序言 学习了一些东西&#xff0c;如何才是真正自己能用的呢&#xff1f;好像就是看自己的潜意识的反应&#xff0c;例如解决了一个问题&#xff0c;那么下次再碰到类似的问题&#xff0c;能直接下意识的去找到对应的信息&#xff0c;从而解决&#xff0c;而不是和第一次碰到一样…