echarts条形图 动态 设置标签背景和柱状图渐变颜色

news2024/12/23 18:58:24

在这里插入图片描述

<!--
    @Description: 横向渐变柱状图
-->
<template>
  <div ref="horizontal" class="w-full h-full"></div>
</template>

<script>
import * as echarts from 'echarts'
export default {
  components: {},
  props: ['data'],
  data() {
    return {}
  },
  computed: {},
  watch: {
    data: {
      handler(){
        this.initCharts();
      },
    }
  },
  created() {},
  mounted() {
    this.$nextTick(() => {
      this.initCharts()
    })
  },
  methods: {
    initCharts() {
      const myChart = echarts.init(this.$refs.horizontal)
      var data = this.data
      var colorList =[
        ['rgba(110,250,248,0.00)','rgba(110,250,248,0.80)'],
        ['rgba(110,250,248,0.00)','rgba(110,250,248,0.80)'],
        ['rgba(110,250,248,0.00)','rgba(110,250,248,0.80)'],
        ['rgba(110,250,248,0.00)','rgba(110,250,248,0.80)'],
        ['rgba(110,250,248,0.00)','rgba(110,250,248,0.80)'],
      ]
      let  idx = this.data.findIndex((item)=> Math.max.apply(null, this.data)=== item)
      if (idx !== -1){
        colorList[idx] = ['rgba(242,180,89,0.10)','rgba(231,162,110,0.70)']
      }
      var className = ['立项', '初设', '施工图计划', '用地审批', '批复']
      var option = {
        grid: {
          left: '5%',
          right: '5%',
          bottom: '5%',
          top: '5%',
          containLabel: true
        },
        legend: {
          show: false
        },
        tooltip: {
          show: false,
          trigger: 'axis',
          axisPointer: {
            type: 'none'
          },
        },
        xAxis: {
          axisLabel: {
            color: '#6d756e', //字体颜色
            width: 100
          },
          // show: false,
          type: 'value',
          splitLine: {
            show: false, //刻度线
          },
          axisTick: {
            show: false //刻度点
          },
          axisLine: {
            show: false //是否显示坐标轴轴线
          },
        },
        yAxis: [
          {
            type: 'category',
            inverse: true,
            interval: 0,
            axisLabel: {
              borderType: "solid",
              padding: [7, 7, 7, 7],
              fontSize: 14,
              width: 100,
              formatter:(e)=>{
                if (e === className[idx]){
                  return `{b|${e}}`
                }
                return `{a|${e}}`
              },
              rich: {
                a: {
                  align:'center',
                  width: 90,
                  color:'#6EE7BC',
                  height:28,
                  backgroundColor: "rgba(94,221,230,0.10)",
                  borderRadius: 4
                },
                b: {
                  align:'center',
                  width: 90,
                  color:'#E7A26E',
                  height:28,
                  backgroundColor: "rgba(231,162,110,0.2)",
                  borderRadius: 4
                }
              }
            },
            splitLine: {
              show: false
            },
            axisTick: {
              show: false
            },
            axisLine: {
              show: false
            },
            data: className
          },
        ],
        series: [
          {
            type: 'bar',
            stack: 'aa',
            zlevel: 1,
            itemStyle: {
              normal: {
                barBorderRadius: 0,
                color: function (params){
                  var colorItem = colorList[params.dataIndex];
                  return  new echarts.graphic.LinearGradient(1, 0, 0, 0, [
                    {
                      offset: 1,
                      color: colorItem[0]
                    },
                    {
                      offset: 0,
                      color: colorItem[1]
                    }
                  ])
                }

              },
            },
            barWidth: 15,
            data: data
          },
        ]
      }
      myChart.setOption(option)
    }
  }
}
</script>
<style lang="scss" scoped></style>

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

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

相关文章

c++11 标准模板(STL)(std::basic_ostream)(八)

定义于头文件 <ostream> template< class CharT, class Traits std::char_traits<CharT> > class basic_ostream : virtual public std::basic_ios<CharT, Traits> 类模板 basic_ostream 提供字符流上的高层输出操作。受支持操作包含有格式…

kubernetes 节点排水维护 cordon, drain, uncordon

1.这三个命令是正式release的1.2新加入的命令&#xff0c;三个命令一起介绍&#xff0c;是因为三个命令配合使用可以实现节点的维护。在1.2之前&#xff0c;因为没有相应的命令支持&#xff0c;如果要维护一个节点&#xff0c;只能stop该节点上的kubelet将该节点退出集群&#…

Java-API简析_java.net.InetAddress类(基于 Latest JDK)(浅析源码)

【版权声明】未经博主同意&#xff0c;谢绝转载&#xff01;&#xff08;请尊重原创&#xff0c;博主保留追究权&#xff09; https://blog.csdn.net/m0_69908381/article/details/131590559 出自【进步*于辰的博客】 因为我发现目前&#xff0c;我对Java-API的学习意识比较薄弱…

git因网络问题报错

Failed to connect to github.com port 443 after 21051 ms: Couldnt connect to server Recv failure: Connection was reset 你是否最近也有遇到这种情况呢&#xff1f; 公司项目目前保存在github上, 在 git pull 和 git push 的时候总是遇到以上情况 也是困扰了我不少…

ESP32-C2 固件烧录需满足的硬件环境整理

ESP32-C2 默认通过 UART0 &#xff08;即 TXD&#xff08;GPIO20&#xff09;和 RXD&#xff08;GPIO19&#xff09;&#xff09;下载固件。 Windows 下可使用 Flash download tool 工具来下载编译后的 bin 文件&#xff1b; 运行 flash_download_tool.exe 的文件 选择开发…

2023 最新互联网大厂Java面经分享:25 分类、1000 道 Java 面试真题(50w 字解析)

作为 Java 程序员&#xff0c;选择学习什么样的技术&#xff1f;什么技术该不该学&#xff1f;去招聘网站上搜一搜、看看岗位要求就十分清楚了&#xff0c;自己具备的技术和能力&#xff0c;直接影响到你工作选择范围和能不能面试成功。 如果想进大厂&#xff0c;那就需要在 Ja…

数据库-分布式数据库历史变迁之旅

我们正式开始分布式数据库历史变迁之旅。 单机数据库的不可能三角 正如经济政策的不可能三角“不可能同时实现资本流动自由&#xff0c;货币政策的独立性和汇率的稳定”那样&#xff0c;单机数据库也有一个不可能三角&#xff0c;那就是&#xff1a;①持久化 ②事务隔离 ③高性…

17款奔驰S400加装原厂无钥匙进入系统,提升您的便利性

奔驰无钥匙进入功能&#xff0c;只要身上装着车钥匙进入车内&#xff0c;车辆就能感应到钥匙的存在&#xff0c;这时只需按下启动键就可启动车辆了 奔驰无钥匙进入功能主要有两大使用体验&#xff0c;首先就是要注意主驾驶位车门的有效检测距离不小于1.5m&#xff0c;其他门钥匙…

BOM/PCB/Gerber比对功能再升级,华秋DFM新版邀您体验!

在电子产品开发过程中&#xff0c;方案选型、原理图设计、BOM制作、PCB设计再到PCB、PCBA的生产都会经历多次版本迭代。在硬件开发过程中BOM文件的迭代、PCB设计的版本迭代是最为常见的&#xff0c;所以对应的版本管控至关重要&#xff0c;只有清晰地了解不同版本的差异&#x…

武汉理工大学第四届ACM校赛

武汉理工大学第四届ACM校赛传送门 A-ST和TS回文问题 这种题都是有一定简单的规律的 如果每个字符都相等的话,肯定存在 如果字符串T的长度是字符串S的整数倍的话,如果字符串S是回文串或者T的长度是S的长度的奇数倍的话,那么存在 否则不存在 就自己构造字符串来找规律&…

121.实战网页图片优化

如上图所示&#xff0c;这个图标的内部尺寸为14791459&#xff0c;但是我们实际呈现的渲染的效果为570562&#xff1b;所以我们可以调整一下图像的大小&#xff0c;缩小图片的文件大小&#xff1b; 我们可以修改他的尺寸&#xff0c;文件的大小就缩小了。但是在网页上显示一点区…

软件测试之单元测试详解

目录 前言&#xff1a; 1、什么是单元测试&#xff1f; 2、什么是好的单元测试&#xff1f; 3、怎么写单元测试&#xff1f; 4、玩转单元测试 前言&#xff1a; 单元测试是软件测试中的一种测试方法&#xff0c;用于验证代码中最小可测试单元的正确性。它主要关注对程序的…

云上百世慧|「慧」聚智能制造的全流程质量管控(我们在7月31日等你)

在制造业的迅猛发展中&#xff0c;「质量管控」一直是企业面临的重要挑战和痛点。如何对「原材料、组件、生产过程和最终产品」进行严格的监控和控制&#xff1f; 稳抓行业痛点&#xff0c;优化质量流程 质量管控&#xff0c;是确保产品符合标准的关键环节。通过严格的监控和控…

卸载mathtype导致的word问题 MathPage.wll not found

MathType 6.9简体中文版是一款功能很强大的数学公式编辑器,但是因为不明原因,有时会出现找不到MathType.dll或者MathPage.wll文件找不到的错误窗口提示&#xff0c;而导致软件无法正常使用&#xff0c;本文将教您解决MathPage.wll或MathType.dll文件找不到的问题。 错误提示&a…

5 给属性赋值的几种方式

首先创建两个类&#xff0c;Person和Dog。为了可以被扫描到&#xff0c;在前面加入Component注解。 Person类如下&#xff1a; package jiang.com.helloworld.pojo;import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.…

React 之 过渡动画

一、React的过渡动画 在开发中&#xff0c;我们想要给一个组件的显示和消失添加某种过渡动画&#xff0c;可以很好的增加用户体验 可以通过原生的CSS来实现这些过渡动画&#xff0c;但是React社区为我们提供了react-transition-group用来完成过渡动画 React曾为开发者提供过动画…

MySQL表/用户权限等基本操作

MySQL表操作练习题&#xff1a; 第一题&#xff1a; 具体要求如下所示&#xff1a; 1. 创建数据库Market&#xff1a; CREATE DATABASE Market;2. 创建customers表&#xff1a; 表结构如图所示&#xff1a; CREATE TABLE customers( c_num INT(11) PRIMARY KEY, c_name…

TiDB(8):技术内幕之计算

1 关系模型到 Key-Value 模型的映射 在这我们将关系模型简单理解为 Table 和 SQL 语句&#xff0c;那么问题变为如何在 KV 结构上保存 Table 以及如何在 KV 结构上运行 SQL 语句。 假设我们有这样一个表的定义&#xff1a; CREATE TABLE User {ID int,Name varchar(20),Role …

基于springboot+vue的文超市进销存管理系统(源代码+数据库+12000字论文)083

基于springbootvue的文超市进销存管理系统(源代码数据库12000字论文)083 一、系统介绍 (本项目有ssmvue版本) 本系统分为管理员、用户、员工三种角色 用户角色包含以下功能&#xff1a; 登录、注册、购物车、订单提交、商品评论、收藏、充值、收货地址管理、收藏管理、订单…

NXP-无感BLDC代码MCSPTE1AK116_BLDC_6Step代码详解

目录 开发平台 工程目录 Generated_Code Sources Config 电机的参数 BLDC参数 无感模式下的一些参数 Peripherals FTM/PDB/ADC配置参数 actuate_s32k meas_s32k motor_structure state_machine main main()主函数 PORT_IRQHandler() PDB0_IRQHandler() FTM1…