首页 > 其他分享 >echarts记录篇(四):堆积图记录

echarts记录篇(四):堆积图记录

时间:2024-01-15 11:34:17浏览次数:20  
标签:console name 记录 params log data echarts pur 堆积

(data) => {
    console.log("data:")
    console.log( data);
 if(data){
    var bw = 30;
    var itemGap = 10;
    var categories1 = [];
    var categories2 = [];
    var categories3 = [];
    var categories4 = [];
    var categories5 = [];
    var categories6 = []; 
    var name = [];
    var data1 = [];
    var data2 = [];
    var data3 = [];
    var data4 = [];
    var data5 = [];
    var data6 = []; 
    for (var i = 0; i < data.length; i++) {
      if (name.indexOf(data[i]["pur_yr"]) == -1) {
        name.push(data[i]["pur_yr"]);
      }
    }
    console.log(name);
    for (var i = 0; i < data.length; i++) {
      if (name[0] == data[i]["pur_yr"]) {
        categories1.push(data[i]["pur_org_no"]);
      } else if (name[1] == data[i]["pur_yr"]) {
        categories2.push(data[i]["pur_org_no"]);
      } else if (name[2] == data[i]["pur_yr"]) {
        categories3.push(data[i]["pur_org_no"]);
      } else if (name[3] == data[i]["pur_yr"]) {
        categories4.push(data[i]["pur_org_no"]);
      } else if (name[4] == data[i]["pur_yr"]) {
        categories5.push(data[i]["pur_org_no"]);
      } 
    }
    console.log(categories1)
  console.log(categories2) 
    console.log(categories3) 
    console.log(categories4) 
    console.log(categories5)
    console.log(categories6)

    for (var i = 0; i < data.length; i++) {
      if (name[0] == data[i]["pur_yr"]) {
        data1.push(data[i]["pur_mth_amt"]);
      } else if (name[1] == data[i]["pur_yr"]) {
        data2.push(data[i]["pur_mth_amt"]);
      } else if (name[2] == data[i]["pur_yr"]) {
        data3.push(data[i]["pur_mth_amt"]);
      } else if (name[3] == data[i]["pur_yr"]) {
        data4.push(data[i]["pur_mth_amt"]);
      } else if (name[4] == data[i]["pur_yr"]) {
        data5.push(data[i]["pur_mth_amt"]);
      } 


    }
 }
  
  
  console.log("data1:"+data1);
  console.log("data2:"+data2);
  console.log("data3:"+data3);
  console.log("data4:"+data4);
  console.log("data5:"+data5);
  console.log("data6:"+data6);
      if(data && data.length>0){
        return {
            grid: {
              top: "5%",
              right: "5%",
              left: "5%",
              bottom: "15%",
              containLabel: true,
            },
            tooltip: {
              trigger: "axis",
              axisPointer: {
                type: "none",
                label: {
                  show: false,
                  backgroundColor: "#6a7985",
                },
              },
              formatter: function (params) {
                //console.log(params,'另嘉园嘉园')
                 console.log(params, '另嘉园嘉园')
                 console.log("params[1].data:::"+params[1].data)
                    let circle = `<span style="display:inline-block;margin-right:5px;border-radius:50%;width:10px;height:10px;left:5px;background-color:`
      
                    if (params) {
                      if (params[1] && params[1].data == '0') {
                        var noData1 = ''
                        noData1 = `style='display:none'`
                      } if (params[2] && params[2].data == '0') {
                        var noData2 = ''
                        noData2 = `style='display:none'`
                      }
                      if (params[3] && params[3].data == '0') {
                        var noData3 = ''
                        noData3 = `style='display:none'`
                      }
                      if (params[4] && params[4].data == '0') {
                        var noData4 = ''
                        noData4 = `style='display:none'`
                      }
                      if (params[5] && params[5].data == '0') {
                        var noData5 = ''
                        noData5 = `style='display:none'`
                      } 
                      return `
                      <div>${params[0].name}</div>
                      <div>总数:${(params[0] ? (params[0].data * 1).toLocaleString() : '暂无数据')}</div>
                      <div class='data4' ${noData4}>${circle}#2382E9"></span>博士:${    (params[4]  &&  params[4].data != '0'? ( params[4].data * 1).toLocaleString() : '0')}</div>
                      <div class='data3' ${noData3}>${circle}#00CBB4"></span>硕士:${    (params[3]  &&  params[3].data != '0'? ( params[3].data * 1).toLocaleString() : '0')}</div>
                      <div class='data2' ${noData2}>${circle}#8CFFF0"></span>本科:${    (params[2]  &&  params[2].data != '0'? ( params[2].data * 1).toLocaleString() : '0')}</div> 
                      <div class='data1' ${noData1}>${circle}#CE769B"></span>本科以下:${(params[1] &&   params[1].data != '0' ? (params[1].data * 1).toLocaleString() : '0')}</div> 
                    `
                    } 
              },
            },
            legend: {
              itemGap: itemGap,
              data: [name[0], name[1], name[2], name[3] ],
              bottom: "bottom",
              textStyle: {
                fontWeight: "normal",
                color: "#fff",
              },
              itemWidth: 20, // 图例标记的图形宽度。
              itemHeight: 20,
            },
            xAxis: {
              data: categories1,
              axisLabel: {
                show: true,
                fontSize: 12,
                color: "#fff",
                rotate: 0, // 文本旋转角度
              },
              axisLine:{  
               show:true,
                      lineStyle:{
                          color:'#fff',
                          width:1,
                      }
                      
                  },
              axisTick: {
                show: true,
              },
              splitLine: {
                //修改背景线条样式
                show: false,
              },
            },
            yAxis: {
                            max: function (value) {
                if(value.max<=10){
                    return 10;
                }
              },
              minInterval:1,
              axisLabel: {
                fontSize: 12,
                color: "#fff",
              },
              axisLine: {
                show: false,
              },
              axisTick: {
                show: false,
              },
              splitLine: {
                //修改背景线条样式
                show: false,
              },
            },
            series: [
              {
                name: name[4],
                type: "line",
                //stack: "y",
                data: data5,
                barWidth: bw,
                barGap: "-10%",
                symbolSize: 0, // symbol的大小设置为0让线的小圆点不显示
                label: {
                  show: true,
                  position: "top",
                  color: "#fff",
                  fontSize:12,
                  formatter: (res) => {
                    return (res.value * 1).toLocaleString();
                  },
                },
                itemStyle: {
                  normal: {
                    color: "rgba(1,1,1,0)",
                    barBorderRadius: [0, 0, 0, 0],
                  },
                },
              },
              /*{
                name: name[5],
                // type: "bar",
                //stack: "total",
                data: data6,
                barWidth: bw,
                type: "line",
                symbol: 'none', 
                symbolSize: 0, // symbol的大小设置为0让线的小圆点不显示
                showSymbol: false, // 不显示symbol不显示
                itemStyle: {
                  normal: {
                    color: "rgba(0,0,0,0)",
                    barBorderRadius: [0, 0, 0, 0],
                  },
                },
                lineStyle: {
                    width: 0, // 线宽是0不显示线
                    color: 'rgba(0, 0, 0, 0)' // 线的颜色是透明的
                },
                emphasis:{ // 鼠标经过时:
                    color: 'rgba(0, 0, 0, 0)',
                    borderColor: 'rgba(0, 0, 0, 0)'
                    }
              },
              */
              {
                  name: name[3],
                  type: "bar",
                  stack: "total",
                  data: data4,
                  barWidth: bw,
                  itemStyle: {
                    normal: {
                      color: "#CE769B",
                      barBorderRadius: [0, 0, 0, 0],
                    },
                  },
                },
              {
                  name: name[2],
                  type: "bar",
                  stack: "total",
                  data: data3,
                  barWidth: bw,
                  itemStyle: {
                    normal: {
                      color: "#8CFFF0",
                      barBorderRadius: [0, 0, 0, 0],
                    },
                  },
                },
              {
                  name: name[1],
                  type: "bar",
                  stack: "total",
                  data: data2,
                  barWidth: bw,
                  itemStyle: {
                    normal: {
                      color: "#00CBB4",
                      barBorderRadius: [0, 0, 0, 0],
                    },
                  },
                },
              {
                name: name[0],
                type: "bar",
                stack: "total",
                data: data1,
                barWidth: bw,
                itemStyle: {
                  normal: {
                    color: "#2382E9",
                    barBorderRadius: [0, 0, 0, 0],
                  },
                },
              } 
            ],
          };
      }else{
        return {
            title: {
                text: '无相关数据',
                x: 'center',
                y: 'center',
                textStyle: {
                  fontSize: 16,
                  fontWeight: 'normal',
                  color: "#fff"
                }
              },
              series: [
                {
                  data: null
                }
              ] 
        } 
      }
    };
    

 

标签:console,name,记录,params,log,data,echarts,pur,堆积
From: https://www.cnblogs.com/fkcqwq/p/17965021

相关文章

  • 关于echarts+vue频繁刷新的造成的内存增长问题
    前言关于解决echarts+ws多次数据刷新渲染,内存增长溢出的尝试。记录一下,便于下次使用有参考方法关闭echarts动画tooltip的动画设置为false。(echarts动画会缓存,通过快照可以看出)tooltip:{axisPointer:{animation:false,//很重要!},......
  • [转帖]Nginx access log 按日期保存记录
    https://cloud.tencent.com/developer/article/1958304 $time_iso8601  生成格式:2021-09-18T15:16:35+08:00$time_local     生成格式:18/Sep/2021:15:12:13+0800网络流传的nginxaccesslog分割都是写shell脚本然后做定时任务来分割日志,操作中自......
  • Centos部署xxl-job记录
    XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展,使用JAVA语言开发,底层依赖mysql1、安装MySQL1.下载MySQLyum包wgethttp://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm2.安装MySQL源rpm-Uvhmysql57-community-rele......
  • 博客后台接口分页优化-访问记录篇
    博客后台接口优化-访问记录......
  • JOISC 2020 记录
    Day1T1Building4首先有一个\(O(n^2)\)的DP:记\(f_{i,j,0/1}\)表示已经填了前\(i\)位,其中有\(j\)位选择了A序列,当前第\(i\)位是选自A序列还是B序列是否可行。通过打表或推理发现,对于\(f_{i,j,0/1}\)中的每一个\((i,0/1)\),为\(1\)的\(j\)是一个连续段,这......
  • 【JVM】记录一次线上服务频繁FGC的排查过程
    一.背景最近在Grafana关注到线上推送服务push-service在运行一段时间后,内存占用非常高,并且频繁发生FGC,这里记录下问题排查过程二.排查过程  推送服务主要作用为,消息推送,因此JVM内存这里分配的是Xmx和Xms均为2G1.首先在Grafana上的监控指标,可以看到FGC非常频繁......
  • esp32-idf开发记录(二)
    上一篇文章配置了基本环境,下面开始记录一些基本的外设驱动1、GPIO使用GPIO基本使用#include"led_driver.h"voidled_init(gpio_num_tgpio_num){gpio_config_tcfg={.pin_bit_mask=(1ull<<gpio_num),.mode=GPIO_MODE_OUTPUT,.pull......
  • esp32-idf开发记录(一)
    esp32最近比较火,也整了几块来玩一下,这里记录一下开发过程,现在用esp32用的比较多的是arduino的框架,这里用一下idf的框架,主要参考下面这个视频做的,感谢这位uphttps://www.bilibili.com/video/BV1kp4y1o7yx/?spm_id_from=333.999.0.0&vd_source=f5fd730321bc0e9ca497d98869046942安......
  • Iot学习笔记记录
    前言2024.1.13沙青图书馆甚至一开始打成了2023年。各位新年快乐。有时间会写下2023的年度总结。不过在此要提前开一个博客,记录一下接下来学习Iot安全的记录了。实在是再不学就要被学弟学妹追上了啊!此时此刻我却还要复习公钥和马原还有python,啊!感叹。想从黑自己的小米手环开始,......
  • darknet-yolov4训练自己的模型记录
    最近又整了一块jetsonnano的板子,就拿过来正好用一下,这个跑yolo还是很有用的,这里也记录一下过程。1、jetsonnano变化之前也玩过jetsonnano,但是最近却发现这个nano和之前的不一样了,是这样的就是原来都是sd卡烧录,但是这个是emmc了最大的区别就是原来使用那个烧录软件给sd卡......