使用echarts制作柱状图并且下方带表格

2024-01-05 20:20

本文主要是介绍使用echarts制作柱状图并且下方带表格,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

实现效果:

调试地址:

Examples - Apache ECharts

源码:

option = {

title: {
    left: 'center',
     top: '0',
    text: '2022-05月 制造产量 达成情况(单位: 吨) (图1)\n\n集团目标产量: 106,675吨   集团实际产量: 2,636吨',
    textStyle:{
      fontSize:20,
      color: 'blue'
    },
    subtext: '达成率: 2.5%',
    subtextStyle:{
      fontSize:22,
      color: 'red'
    },
    itemGap: 20
  },

  tooltip: {
    trigger: 'axis',
    axisPointer: {
      type: 'cross'
    }
  },
  
  grid: { 
          top: '200',
          left: '100',
          right: '12',
          bottom: '90',
          containLabel: true
        },
  
  legend: [
          {
            textStyle: { color:'bule'},
            data: ['目标产量', '实际产量', '达成率'],
            bottom: 30,
            left: 30
          },
          { 
            align: 'right',
            itemGap: 10,//这里是调整底部 底部表格 字段说明的间距
            orient: 'vertical',
            textStyle: { color: '' },
            bottom: 83,
            left: 60,
            data: ['目标产量', '实际产量', '达成率']
          }
        ],


 xAxis: //[
          {
            type: 'category',
            data: [
            '集团广东\n\n\n\n\n\n\n3399\n\n2222\n\n1.0', 
            '\n\n集团江门\n\n\n\n\n3399\n\n2222\n\n1.0',
            '集团护理中国\n\n\n\n\n\n\n3399\n\n2222\n\n1.0',
            '\n\n集团四川\n\n\n\n\n3399\n\n2222\n\n1.0',
            '集团北方\n\n\n\n\n\n\n3399\n\n2222\n\n1.0',
            '\n\n集团辽宁\n\n\n\n\n3399\n\n2222\n\n1.0',
            '集团中国\n\n\n\n\n\n\n3399\n\n2222\n\n1.0',
            '\n\n集团新疆\n\n\n\n\n3399\n\n2222\n\n1.0',
            '集团护理广东\n\n\n\n\n\n\n3399\n\n2222\n\n1.0',
            '\n\n集团江西\n\n\n\n\n3399\n\n2222\n\n1.0'
],
            axisPointer: {
              type: 'shadow'
            },
            axisTick: {
              show: false
            },
            axisLine: {
              show: true,
              lineStyle: {
                //color: '#93ECFE',
                opacity: 0,
              }
            },
            axisLabel: {
              interval: 0, //这里是调整底部表格数据的间距
              rotate: 0,
              fontSize: 12,
              fontWeight: 'bold',
              /*formatter(value, index) {
               if (index % 2 != 0) {
              return `\n\n集团护理中国\n\n\n\n3540吨\n\n129吨\n\n3.6%`; //这里需要动态赋值 java处理
            } else {
              return `集团护理中国\n\n\n\n\n\n3540吨\n\n129吨\n\n3.6%`; //这里需要动态赋值 java处理
            }  
              },*/
              
             /* formatter: function(value, index) {
                  if (index % 2 != 0) {
              return `\n\n集团护理中国\n\n\n\n3540吨\n\n129吨\n\n3.6%`;
            } else {
              return `集团护理中国\n\n\n\n\n\n3540吨\n\n129吨\n\n3.6%`;
            }  

              },*/
              
             
              
              
              //formatter:"{a}<br/>{b}{c}",
              
              rich: {
                table: {
                  lineHeight: 35,
                  align: 'center',
                  //color: '#fff'
                }
              }
            }
          },
        //],

  
  yAxis: 
          {
            type: 'value',
            //name: '营业/利润',
            //interval: 50,  //Y轴刻度
         
            axisLabel: {
              //color: '#fff',
              formatter: '{value}'
            },
            splitLine: {
              show: true,
              lineStyle: {
                //color: '#93ECFE',
                opacity: 0.3
              }
            }
          }
        ,
  
  
  
  series: [
          {
            name: '目标产量',
            type: 'bar',
            barGap: 0, // 这里是设置多个柱状图形的间距
            barWidth: 0,
            /*tooltip: {
              valueFormatter: function (value) {
                //return value + ' 吨';
                return value;
              }
            },*/
            data: [3540,10207,26255,19087,6225,2773,4219,17553,7700,9116,0],
            barWidth:20
          },
          {
            name: '实际产量',
            type: 'bar',
            /*tooltip: {
              valueFormatter: function (value) {
                //return value + ' 吨';
                return value;
              }
            },*/
            data: [129,300,550,593,40,83,46,632,73,191,0],
            barWidth:20,
            itemStyle: {
              /*normal: {
                barBorderRadius: [10, 10, 10, 10],
              }*/
            },
          },
          {
            name: '达成率',
            type: 'bar',
           /* tooltip: {
              valueFormatter: function (value) {
                return value + ' %';
              }
            },*/
           
           data: [9222.6,2.9,2.1,3.1,0.6,3.0,1.1,3.6,0.9,2.1,0.0],
            barWidth:20,
            itemStyle: {
              normal: {
                label: {
                  show: true, //开启显示数值
                  position: 'top', //数值在上方显示
                  textStyle: {  //数值样式
                    //color: '#D1DBFF',   //字体颜色
                    fontSize: 12  //字体大小
                  },
                  formatter: function(data){return data.data+'%'}
                    
                  
                }
              }
            }

          },
          
       
  
  ]
};

觉得不错请点赞收藏

这篇关于使用echarts制作柱状图并且下方带表格的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/574053

相关文章

Java中流式并行操作parallelStream的原理和使用方法

《Java中流式并行操作parallelStream的原理和使用方法》本文详细介绍了Java中的并行流(parallelStream)的原理、正确使用方法以及在实际业务中的应用案例,并指出在使用并行流... 目录Java中流式并行操作parallelStream0. 问题的产生1. 什么是parallelS

Linux join命令的使用及说明

《Linuxjoin命令的使用及说明》`join`命令用于在Linux中按字段将两个文件进行连接,类似于SQL的JOIN,它需要两个文件按用于匹配的字段排序,并且第一个文件的换行符必须是LF,`jo... 目录一. 基本语法二. 数据准备三. 指定文件的连接key四.-a输出指定文件的所有行五.-o指定输出

Linux jq命令的使用解读

《Linuxjq命令的使用解读》jq是一个强大的命令行工具,用于处理JSON数据,它可以用来查看、过滤、修改、格式化JSON数据,通过使用各种选项和过滤器,可以实现复杂的JSON处理任务... 目录一. 简介二. 选项2.1.2.2-c2.3-r2.4-R三. 字段提取3.1 普通字段3.2 数组字段四.

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

详解SpringBoot+Ehcache使用示例

《详解SpringBoot+Ehcache使用示例》本文介绍了SpringBoot中配置Ehcache、自定义get/set方式,并实际使用缓存的过程,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录摘要概念内存与磁盘持久化存储:配置灵活性:编码示例引入依赖:配置ehcache.XML文件:配置

Java 虚拟线程的创建与使用深度解析

《Java虚拟线程的创建与使用深度解析》虚拟线程是Java19中以预览特性形式引入,Java21起正式发布的轻量级线程,本文给大家介绍Java虚拟线程的创建与使用,感兴趣的朋友一起看看吧... 目录一、虚拟线程简介1.1 什么是虚拟线程?1.2 为什么需要虚拟线程?二、虚拟线程与平台线程对比代码对比示例:三

k8s按需创建PV和使用PVC详解

《k8s按需创建PV和使用PVC详解》Kubernetes中,PV和PVC用于管理持久存储,StorageClass实现动态PV分配,PVC声明存储需求并绑定PV,通过kubectl验证状态,注意回收... 目录1.按需创建 PV(使用 StorageClass)创建 StorageClass2.创建 PV

Redis 基本数据类型和使用详解

《Redis基本数据类型和使用详解》String是Redis最基本的数据类型,一个键对应一个值,它的功能十分强大,可以存储字符串、整数、浮点数等多种数据格式,本文给大家介绍Redis基本数据类型和... 目录一、Redis 入门介绍二、Redis 的五大基本数据类型2.1 String 类型2.2 Hash

Redis中Hash从使用过程到原理说明

《Redis中Hash从使用过程到原理说明》RedisHash结构用于存储字段-值对,适合对象数据,支持HSET、HGET等命令,采用ziplist或hashtable编码,通过渐进式rehash优化... 目录一、开篇:Hash就像超市的货架二、Hash的基本使用1. 常用命令示例2. Java操作示例三

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他