echarts 一条折线图上显示不同颜色

文档树懒学堂:ECharts visualMap 代码实例及对应注释 - 树懒学堂

封装的echarts 组件代码:

<template>

    <div :style="{ height: '100%' }">

        <div class="foldLine" ref="foldLine" :style="{ width: widths, height: heights }"></div>

    </div>

</template>

<script>

import * as echarts from 'echarts';

export default {

    props: {

        id: {

            type: String,

            default: 'lineEchartNew'

        },

        heights: {

            type: String,

            default: '100%'

        },

        widths: {

            type: String,

            default: '100%'

        },

        tagName: {

            type: String,

            default: '排名'

        },

        indexName: {

            type: String,

            default: ''

        },

        chartObj: {

            type: Array,

            default: () => {

                return [];

            }

        },

        objs: {

            type: Object,

            default: () => {

                return {

                    height: '100%'

                };

            }

        }

    },

    data() {

        return {

            chart: null

        };

    },

    watch: {

        chartObj: {

            handler() {

                this.initEchats();

            },

            deep: true

        }

    },

    mounted() {

        this.$nextTick(() => {

            this.init();

        });

    },

    beforeDestroy() {

        this.chart && this.chart.dispose();

        this.chart = null;

    },

    methods: {

        init() {

            this.chart = echarts.init(this.$refs.foldLine);

            this.initEchats();

        },

        // 整体折线图显示不通颜色

        getLineColor(healthList) {

            let arr = [];

            healthList.forEach((v, i) => {

                let obj = {

                    gt: i,

                    lt: i + 1,

                    color: healthList[i] < 90 ? 'rgba(229,27,88,0.68)' : 'rgba(24,232,169,1)' //大于0小于12为绿色

                };

                arr.push(obj);

            });

            return arr;

        },

        initEchats() {

            let xDataList = []; // x轴

            let healthList = []; // 整体

            let xzHealthList = []; // 修障

            let zyHealthList = []; // 装移

            let zycolorList = []; // 装移

            let xzcolorList = []; // 修障

            let isColor = ''; // 整体

            //isColor == 1 说明低于90分 红色: #F32B2B

            this.chartObj &&

                this.chartObj.forEach((v, index) => {

                    xDataList.push(v.region);

                    // 整体

                    if (v.isColor == 0) {

                        isColor = 'rgba(24,232,169,1)';

                    } else if (v.isColor == 1) {

                        isColor = '#F32B2B'; // 红色

                        // isColor = 'rgba(24,232,169,1)';

                    }

                    // 装移

                    if (v.zyIsColor == 0) {

                        zycolorList[index] = ['#1EE7E7', 'rgba(30, 231, 231, 0.35)'];

                    } else if (v.zyIsColor == 1) {

                        zycolorList[index] = ['rgba(243, 43, 43, 0)', '#F32B2B'];

                    }

                    // 修障

                    if (v.xzIsColor == 0) {

                        xzcolorList[index] = ['#1890FF', 'rgba(24, 144, 255, 0.35)'];

                    } else if (v.xzIsColor == 1) {

                        xzcolorList[index] = ['rgba(243, 43, 43, 0)', '#F32B2B'];

                    }

                    if (!this.tagName || this.tagName == '排名') {

                        healthList.push(v.score);

                        xzHealthList.push(v.xzscore);

                        zyHealthList.push(v.zyscore);

                        this.legendData = [

                            {

                                show: true,

                                top: -3,

                                right: 110,

                                itemWidth: 10,

                                itemHeight: 2,

                                data: [

                                    {

                                        name: '整体',

                                        icon: 'rect'

                                    }

                                ],

                                itemStyle: {

                                    color: '#18E8A9'

                                },

                                textStyle: {

                                    fontSize: 12,

                                    lineHeight: 12,

                                    color: '#fff',

                                    rich: {

                                        a: {

                                            verticalAlign: 'middle'

                                        }

                                    },

                                    padding: [0, 0, -2, 0] //[上、右、下、左]

                                }

                            },

                            {

                                show: true,

                                top: -3,

                                right: 60,

                                itemWidth: 10,

                                itemHeight: 10,

                                data: [{ name: '装移', icon: 'rect' }],

                                textStyle: {

                                    fontSize: 12,

                                    lineHeight: 12,

                                    color: '#fff',

                                    rich: {

                                        a: {

                                            verticalAlign: 'middle'

                                        }

                                    },

                                    padding: [0, 0, -2, 0] //[上、右、下、左]

                                }

                            },

                            {

                                show: true,

                                top: -3,

                                right: 10,

                                itemWidth: 10,

                                itemHeight: 10,

                                data: [{ name: '修障', icon: 'rect' }],

                                textStyle: {

                                    fontSize: 12,

                                    lineHeight: 12,

                                    color: '#fff',

                                    rich: {

                                        a: {

                                            verticalAlign: 'middle'

                                        }

                                    },

                                    padding: [0, 0, -2, 0] //[上、右、下、左]

                                }

                            }

                        ];

                        if (this.indexName == '交付转化') {

                            this.legendData = [

                                {

                                    show: true,

                                    top: -3,

                                    right: 10,

                                    itemWidth: 10,

                                    itemHeight: 10,

                                    data: [{ name: '交付', icon: 'rect' }],

                                    textStyle: {

                                        fontSize: 12,

                                        lineHeight: 12,

                                        color: '#fff',

                                        rich: {

                                            a: {

                                                verticalAlign: 'middle'

                                            }

                                        },

                                        padding: [0, 0, -2, 0] //[上、右、下、左]

                                    }

                                }

                            ];

                        }

                        if (this.indexName == '修障重复申告率') {

                            this.legendData = [

                                {

                                    show: true,

                                    top: -3,

                                    right: 10,

                                    itemWidth: 10,

                                    itemHeight: 10,

                                    data: [{ name: '修障', icon: 'rect' }],

                                    textStyle: {

                                        fontSize: 12,

                                        lineHeight: 12,

                                        color: '#fff',

                                        rich: {

                                            a: {

                                                verticalAlign: 'middle'

                                            }

                                        },

                                        padding: [0, 0, -2, 0] //[上、右、下、左]

                                    }

                                }

                            ];

                        }

                    } else if (this.tagName == '整体') {

                        healthList.push(v.overall);

                        xzHealthList.push(v.xz);

                        zyHealthList.push(v.zy);

                        this.legendData = [

                            {

                                show: true,

                                top: -3,

                                right: 110,

                                itemWidth: 10,

                                itemHeight: 2,

                                data: [

                                    {

                                        name: '整体',

                                        icon: 'rect'

                                    }

                                ],

                                itemStyle: {

                                    color: '#18E8A9'

                                },

                                textStyle: {

                                    fontSize: 12,

                                    lineHeight: 12,

                                    color: '#fff',

                                    rich: {

                                        a: {

                                            verticalAlign: 'middle'

                                        }

                                    },

                                    padding: [0, 0, -2, 0] //[上、右、下、左]

                                }

                            },

                            {

                                show: true,

                                top: -3,

                                right: 60,

                                itemWidth: 10,

                                itemHeight: 10,

                                data: [{ name: '装移', icon: 'rect' }],

                                textStyle: {

                                    fontSize: 12,

                                    lineHeight: 12,

                                    color: '#fff',

                                    rich: {

                                        a: {

                                            verticalAlign: 'middle'

                                        }

                                    },

                                    padding: [0, 0, -2, 0] //[上、右、下、左]

                                }

                            },

                            {

                                show: true,

                                top: -3,

                                right: 10,

                                itemWidth: 10,

                                itemHeight: 10,

                                data: [{ name: '修障', icon: 'rect' }],

                                textStyle: {

                                    fontSize: 12,

                                    lineHeight: 12,

                                    color: '#fff',

                                    rich: {

                                        a: {

                                            verticalAlign: 'middle'

                                        }

                                    },

                                    padding: [0, 0, -2, 0] //[上、右、下、左]

                                }

                            }

                        ];

                        if (this.indexName == '交付转化') {

                            this.legendData = [

                                {

                                    show: true,

                                    top: -3,

                                    right: 10,

                                    itemWidth: 10,

                                    itemHeight: 10,

                                    data: [{ name: '交付', icon: 'rect' }],

                                    textStyle: {

                                        fontSize: 12,

                                        lineHeight: 12,

                                        color: '#fff',

                                        rich: {

                                            a: {

                                                verticalAlign: 'middle'

                                            }

                                        },

                                        padding: [0, 0, -2, 0] //[上、右、下、左]

                                    }

                                }

                            ];

                        }

                        if (this.indexName == '修障重复申告率') {

                            this.legendData = [

                                {

                                    show: true,

                                    top: -3,

                                    right: 10,

                                    itemWidth: 10,

                                    itemHeight: 10,

                                    data: [{ name: '修障', icon: 'rect' }],

                                    textStyle: {

                                        fontSize: 12,

                                        lineHeight: 12,

                                        color: '#fff',

                                        rich: {

                                            a: {

                                                verticalAlign: 'middle'

                                            }

                                        },

                                        padding: [0, 0, -2, 0] //[上、右、下、左]

                                    }

                                }

                            ];

                        }

                    } else if (this.tagName == '交付') {

                        healthList = [];

                        xzHealthList = [];

                        zyHealthList.push(v.zy);

                        this.legendData = [

                            {

                                show: true,

                                top: -3,

                                right: 10,

                                itemWidth: 10,

                                itemHeight: 10,

                                data: [{ name: this.indexName == '交付转化' ? '交付' : '装移', icon: 'rect' }],

                                textStyle: {

                                    fontSize: 12,

                                    lineHeight: 12,

                                    color: '#fff',

                                    rich: {

                                        a: {

                                            verticalAlign: 'middle'

                                        }

                                    },

                                    padding: [0, 0, -2, 0] //[上、右、下、左]

                                }

                            }

                        ];

                    } else if (this.tagName == '申告') {

                        healthList = [];

                        zyHealthList = [];

                        xzHealthList.push(v.xz);

                        this.legendData = [

                            {

                                show: true,

                                top: -3,

                                right: 10,

                                itemWidth: 10,

                                itemHeight: 10,

                                data: [{ name: this.indexName == '交付转化' ? '交付' : '修障', icon: 'rect' }],

                                textStyle: {

                                    fontSize: 12,

                                    lineHeight: 12,

                                    color: '#fff',

                                    rich: {

                                        a: {

                                            verticalAlign: 'middle'

                                        }

                                    },

                                    padding: [0, 0, -2, 0] //[上、右、下、左]

                                }

                            }

                        ];

                    }

                });

            let seriesAll = [

                {

                    name: '整体',

                    type: 'line',

                    // barWidth: 24,

                    barGap: '1%',

                    // symbol: 'rect',

                    symbolSize: [0, 0],

                    data: healthList,

                    // label: {

                    //     normal: {

                    //         show: true,

                    //         fontSize: 14,

                    //         color: '#fff',

                    //         formatter: '{c}',

                    //         position: 'top'

                    //     }

                    // },

                    itemStyle: {

                        color: 'rgba(24,232,169,1)',

                        // color: isColor,

                        borderColor: '#18E8A9',

                        borderWidth: 1,

                        borderType: 'solid'

                    }

                },

                {

                    name: '装移',

                    type: 'bar',

                    barWidth: 5,

                    barGap: '1%',

                    data: zyHealthList,

                    itemStyle: {

                        normal: {

                            //这里设置每个柱子颜色不一样

                            color: function (params) {

                                let colorItem = zycolorList[params.dataIndex];

                                if (colorItem !== undefined) {

                                    return new echarts.graphic.LinearGradient(

                                        0,

                                        0,

                                        0,

                                        1,

                                        [

                                            {

                                                offset: 0,

                                                color: colorItem[0]

                                            },

                                            {

                                                offset: 1,

                                                color: colorItem[1]

                                            }

                                        ],

                                        false

                                    );

                                }

                            }

                        }

                    }

                    // color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [

                    //     {

                    //         offset: 0,

                    //         color: '#1EE7E7 '

                    //     },

                    //     {

                    //         offset: 1,

                    //         color: 'rgba(30, 231, 231, 0.35)'

                    //     }

                    // ])

                },

                {

                    name: '修障',

                    type: 'bar',

                    barWidth: 5,

                    barGap: '1%',

                    data: xzHealthList,

                    itemStyle: {

                        normal: {

                            //这里设置每个柱子颜色不一样

                            color: function (params) {

                                let colorItem = xzcolorList[params.dataIndex];

                                if (colorItem !== undefined) {

                                    return new echarts.graphic.LinearGradient(

                                        0,

                                        0,

                                        0,

                                        1,

                                        [

                                            {

                                                offset: 0,

                                                color: colorItem[0]

                                            },

                                            {

                                                offset: 1,

                                                color: colorItem[1]

                                            }

                                        ],

                                        false

                                    );

                                }

                            }

                        }

                    }

                    // color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [

                    //     {

                    //         offset: 0,

                    //         color: '#1890FF '

                    //     },

                    //     {

                    //         offset: 1,

                    //         color: 'rgba(24, 144, 255, 0.35)'

                    //     }

                    // ])

                }

            ];

            let seriesJiaoFu = [

                {

                    name: '交付',

                    type: 'bar',

                    barWidth: 5,

                    barGap: '1%',

                    data: zyHealthList,

                    color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [

                        {

                            offset: 0,

                            color: '#1EE7E7 '

                        },

                        {

                            offset: 1,

                            color: 'rgba(30, 231, 231, 0.35)'

                        }

                    ])

                }

            ];

            let axisLabelAll = {

                color: 'rgba(230,247,255,0.85)',

                interval: 0, //0: x轴名字没有间隔隐藏,全部显示

                fontSize: 10,

                // rotate: 40, // 调整数值改变倾斜的幅度(范围-90到90)

                formatter: (text) => {

                    return text.replaceAll('分公司', '');

                }

            };

            let axisLabelMore = {

                color: 'rgba(230,247,255,0.85)',

                // interval: 0, //0: x轴名字没有间隔隐藏,全部显示

                fontSize: 10

            };

            let option = {

                tooltip: {

                    trigger: 'axis',

                    axisPointer: {

                        // 坐标轴指示器,坐标轴触发有效 设置鼠标放上去是线还是阴影

                        type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'

                    }

                    // formatter:function(param){

                    //     if(param.length>2){

                    //          return `

                    //          <p>时间:${param[0].name}</p>

                    //          <p>${param[0].seriesName}:能耗${param[0].data},PRB利用率:${param[1].data}</p>

                    //             <p>${param[2].seriesName}:能耗:${param[2].data},PRB利用率:${param[3].data}</p>

                    //         `

                    //     }else{

                    //          return `

                    //           <p>时间:${param[0].name}</p>

                    //          <p>${param[0].seriesName}:能耗${param[0].data},PRB利用率:${param[1].data}</p>

                    //         `

                    //     }

                    // }

                },

                legend: this.legendData,

                grid: {

                    top: '16%',

                    left: '3%',

                    right: '5%',

                    bottom: '7%',

                    containLabel: true

                },

                yAxis: {

                    name: '',

                    nameTextStyle: {

                        color: '#fff',

                        align: 'center'

                    },

                    nameGap: 20,

                    type: 'value',

                    splitLine: {

                        show: true,

                        lineStyle: {

                            //轴线样式

                            type: 'dashed', // dotted

                            color: 'rgba(230, 247, 255, 0.2)'

                        }

                    },

                    axisLine: {

                        //坐标轴轴线

                        show: false, //是否显示

                        lineStyle: {

                            //轴线样式

                            color: '#656A94'

                        }

                    },

                    axisTick: {

                        show: false //是否显示刻度

                    },

                    axisLabel: {

                        inside: false, //数值内侧外侧

                        // padding: [0, 4, 15, 0],

                        showMinLabel: true,

                        showMaxLabel: true,

                        color: 'rgba(230,247,255,0.6)',

                        fontSize: 12

                        // formatter:function(text,index){

                        //     return text+"%";

                        // }

                    }

                },

                xAxis: [

                    {

                        type: 'category',

                        data: xDataList,

                        axisLine: {

                            lineStyle: {

                                color: '#E6F7FF'

                            }

                        },

                        axisTick: {

                            show: false

                        },

                        // axisLabel: {

                        //     color: 'rgba(230,247,255,0.85)',

                        //     interval: 0, //0: x轴名字没有间隔隐藏,全部显示

                        //     fontSize: 10,

                        //     // rotate: 40, // 调整数值改变倾斜的幅度(范围-90到90)

                        //     formatter: (text) => {

                        //         return text.replaceAll('分公司', '');

                        //     }

                        // }

                        axisLabel: xDataList.length > 12 ? axisLabelMore : axisLabelAll

                    },

                    {

                        type: 'category',

                        axisLine: {

                            show: false

                        },

                        axisTick: {

                            show: false

                        },

                        axisLabel: {

                            show: false

                        }

                    }

                ],

                series: this.indexName == '交付转化' ? seriesJiaoFu : seriesAll,

                // 一条折线图显示不通颜色

                visualMap:

                    this.indexName == '交付转化'

                        ? null

                        : {

                              type: 'piecewise',

                              show: false,

                              dimension: 0,

                              seriesIndex: 0,

                              pieces: this.getLineColor(healthList)

                              //   pieces: [

                              //       {

                              //           gt: 0,

                              //           lt: 1,

                              //           color: healthList[0] < 90 ? 'rgba(229,27,88,0.68)' : 'rgba(24,232,169,1)' //大于0小于12为绿色

                              //       },

                              //       {

                              //           gt: 1,

                              //           lt: 2,

                              //           color: healthList[1] < 90 ? 'rgba(229,27,88,0.68)' : 'rgba(24,232,169,1)' //大于0小于12为绿色

                              //       },

                              //   ]

                          }

            };

            if (option && typeof option === 'object') {

                this.chart.clear(); //画布清空

                this.chart.resize(); //自适应div的大小

                this.chart.setOption(option, true);

                // this.chart.setOption(

                //     {

                //         series: seriesArr

                //     },

                //     { notMerge: false, lazyUpdate: false, silent: false }

                // );

            }

        }

    }

};

</script>

<style lang="scss" scoped></style>

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

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

相关文章

【大数据】Flink on YARN,如何确定 TaskManager 数

Flink on YARN&#xff0c;如何确定 TaskManager 数 1.问题2.并行度&#xff08;Parallelism&#xff09;3.任务槽&#xff08;Task Slot&#xff09;4.确定 TaskManager 数 1.问题 在 Flink 1.5 Release Notes 中&#xff0c;有这样一段话&#xff0c;直接上截图。 这说明从 …

centos7 安装mysql8

下载mysql wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.36-1.el7.x86_64.rpm-bundle.tar解压安装 tar xvf mysql-8.0.36-1.el7.x86_64.rpm-bundle.tar yum -y localinstall *.rpm初始化 mysqld --initialize --usermysql需要选择mysql用户&#xff0c;否则可…

Java基于微信小程序的医院核酸检测服务系统,附源码

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…

程序员的数字化工作台:理解不关机背后的逻辑与需求

目录 程序员为什么不喜欢关电脑&#xff1f; 电脑对程序员的重要性&#xff1a; 工作流程与需求&#xff1a; 数据安全与备份&#xff1a; 即时性与响应&#xff1a; 个人习惯等方面&#xff1a; 程序员为什么不喜欢关电脑&#xff1f; 电脑对程序员的重要性&#xff1a;…

MySQL数据引擎、建库及账号管理

目录 一、MySQL数据库引擎 1.1.MySQL常见数据库引擎 1.InnoDB(MySQL默认引擎) 2.MyISAM 3.MEMORY&#xff08;Heap&#xff09; 1.2.存储引擎查看 二、建库 1.默认数据库介绍 2.建库 3.查看数据库 4.删除数据库 三、账号管理 1.创建用户 1.创建用户并设置登陆密码…

使用Qt创建项目 Qt中输出内容到控制台 设置窗口大小和窗口标题 Qt查看说明文档

按windows键&#xff0c;找到Qt Creator &#xff0c;打开 一.创建带模板的项目 新建项目 设置项目路径QMainWindow是带工具栏的窗口。 QWidget是无工具栏的窗口。 QDuakig是对话框窗口。创建好的项目如下&#xff1a; #include "widget.h"// 构造函数&#xff…

03 动力云客项目之登录功能后端实现

创建项目 使用Spring initializr初始化项目 老师讲的是3.2.0, 但小版本之间问题应该不大.

Flutter学习(八)Flutter_Boost接入

背景 基于安卓的原生项目&#xff0c;进行Flutter的接入&#xff0c;进行混合开发。 参考链接 官方地址&#xff1a;link fullter_boost配置&#xff1a;link git代理配置&#xff1a;link kotlin语法集成&#xff1a;link 混合开发的坑&#xff1a;link 开发环境 as4…

JavaScript基础第二天

JavaScript基础第二天 今天我们学习if分支语句、三元表达式和switch-case语句。 1. if分支语句 1.1 语法 if (条件表达式){// 满足条件要执行的语句 } else {// 不满足条件要执行的语句 }if中的内容如果为true&#xff0c;就执行大括号的代码块&#xff0c;如果为false执行…

逆向工程:揭开科技神秘面纱的艺术

在当今这个科技飞速发展的时代&#xff0c;我们每天都在与各种电子产品、软件应用打交道。然而&#xff0c;你是否想过&#xff0c;这些看似复杂的高科技产品是如何被创造出来的&#xff1f;今天&#xff0c;我们就来探讨一下逆向工程这一神秘而又令人着迷的领域。 一、什么是…

ChatGPT学习第一周

&#x1f4d6; 学习目标 掌握ChatGPT基础知识 理解ChatGPT的基本功能和工作原理。认识到ChatGPT在日常生活和业务中的潜在应用。 了解AI和机器学习的基本概念 获取人工智能&#xff08;AI&#xff09;和机器学习&#xff08;ML&#xff09;的初步了解。理解这些技术是如何支撑…

【OpenVINO™】在 MacOS 上使用 OpenVINO™ C# API 部署 Yolov5 (上篇)

在 MacOS 上使用 OpenVINO™ C# API 部署 Yolov5 &#xff08;上篇&#xff09; 项目介绍 YOLOv5 是革命性的 "单阶段"对象检测模型的第五次迭代&#xff0c;旨在实时提供高速、高精度的结果&#xff0c;是世界上最受欢迎的视觉人工智能模型&#xff0c;代表了Ult…

【Unity游戏设计】跳一跳Day1

一、创建场景 Assets/Secnes:GameAssets创建游戏资源Prefabs存放预制体,Scripts脚本,Sounds声音,Textures图片资源,Materiais材质资源分类存放意识 二、场景建模 注意&#xff1a;alt鼠标左键切换视角 视角与摄像机视角保持一致&#xff1a;Main CameraGameObjectAlign Vie…

华视 CVR-100UC 身份证读取 html二次开发模板

python读卡&#xff1a;python读卡 最近小唐应要求要开发一个前端的身份证读卡界面&#xff0c;结果华视CVR-100UC 的读取界面是在是有点&#xff0c;而且怎么调试连官方最基本的启动程序都执行不了。CertReader.ocx 已成功&#xff0c;后面在问询一系列前辈之后&#xff0c;大…

百卓Smart管理平台 uploadfile.php 文件上传漏洞复现(CVE-2024-0939)

0x01 产品简介 百卓Smart管理平台是北京百卓网络技术有限公司(以下简称百卓网络)的一款安全网关产品,是一家致力于构建下一代安全互联网的高科技企业。 0x02 漏洞概述 百卓Smart管理平台 uploadfile.php 接口存在任意文件上传漏洞。未经身份验证的攻击者可以利用此漏洞上传…

【Py/Java/C++三种语言详解】LeetCode每日一题240207【二叉树BFS】LeetCode2641、二叉树的堂兄弟节点II

有华为OD考试扣扣交流群可加948025485 可上全网独家的 欧弟OJ系统 练习华子OD、大厂真题 绿色聊天软件戳 od1336了解算法冲刺训练 文章目录 题目链接题目描述解题思路代码PythonJavaC时空复杂度 华为OD算法/大厂面试高频题算法练习冲刺训练 题目链接 LeetCode2641、二叉树的堂…

泛型、Trait 和生命周期(上)

目录 1、提取函数来减少重复 2、在函数定义中使用泛型 3、结构体定义中的泛型 4、枚举定义中的泛型 5、方法定义中的泛型 6、泛型代码的性能 每一门编程语言都有高效处理重复概念的工具。在 Rust 中其工具之一就是 泛型&#xff08;generics&#xff09;。泛型是具体类型…

Docker进阶篇-CIG重量级监控系统

一、简介 通过docker stats命令可以很方便的查看当前宿主机上所有容器的CPU、内存、网络流量等数 据&#xff0c;可以满足一些小型应用。 但是docker stats统计结果只能是当前宿主机的全部容器&#xff0c;数据资料是实时的&#xff0c;没有地方存储、 没有健康指标过线预警…

在angular12中proxy.conf.json中配置详解

一、proxy.conf.json文件的目录 二、proxy.conf.json文件中的配置 "/xxx/api": {"target": "地址/api","secure": false,"logLevel": "debug","changeOrigin": true,"pathRewrite": {"…

Unity C#进阶案例 “泛型编程”

文章目录 泛型基础示例1&#xff1a;泛型类与方法示例2&#xff1a;泛型方法示例3&#xff1a;泛型约束示例4&#xff1a;泛型委托与事件示例5&#xff1a;泛型单例模式&#xff08;Unity&#xff09; 在Unity中&#xff0c;C#的泛型编程是一种强大的工具&#xff0c;它允许你编…