折线图,样式调整background、serice、xAxis、yxAis等

news2024/11/23 2:25:23

效果展示:

option参数:

let option = {
            backgroundColor: "rgba(48, 65, 90, 1)",
            title: {
                // text: obj.stnm,
                // subtext: obj.datasource,
                textStyle: {
                    color: "#ffffff"
                },
                right: 10
                // left: 'center',
                // itemGap: 4
            },
            tooltip: {
                trigger: 'axis',
                axisPointer: {
                    animation: false
                },
                // formatter: function (param) {
                //    console.log(param)
                // }
            },
            legend: {
                data: [shuiweitxt],
                textStyle: {
                    color: "#ffffff"
                },
                right: 10,
                top: 5
            },
            grid: {
                show: true,
                top: 40,
                bottom: 80,
                // left: 60,
                // right: 20
            },
            toolbox: {

            },
            xAxis: [{
                type: 'category',
                boundaryGap: false,
                axisLine: {
                    onZero: false,
                    show: true,
                    lineStyle: {
                        color: "#ffffff"
                    },
                    symbol: ['none', 'arrow']
                },
                nameTextStyle: {
                    color: "#ffffff"
                },
                axisLabel: {
                    color: "#ffffff"
                },
                data: timeData.map(function (str) {
                    return str.substring(5, 16).replace(/ /, "\n");
                })
            }],
            yAxis: [{
                nameTextStyle: {
                    color: "#ffffff"
                },
                axisLine: {
                    show: true,
                    lineStyle: {
                        color: "#ffffff"
                    },
                    symbol: ['none', 'arrow']
                },
                axisLabel: {
                    color: "#ffffff"
                },
                splitLine: {
                    lineStyle: {
                        type: 'dashed'
                    }
                },
                name: `${shuiweitxt} (${paramData?.unit})`,
                type: 'value',
                max: Math.ceil(Math.max.apply(null, shuiwei) + 10),
            }, ],
            series: [{
                name: shuiweitxt,
                type: 'line',
                symbolSize: 5,
                animation: true,
                areaStyle: {},
                itemStyle: {
                    normal: {
                        color: "#FFAA44",
                    }
                },
                lineStyle: {
                    width: 1,
                },
                markArea: {
                    silent: true,

                },
                data: shuiwei
            }, ]
        };

封装代码:

/**
     * 绘制24小时数据的曲线图
     * @param {object}  
     */
    drawGXHydroEcharts: function (shuiwei, timeData, paramData) {
        // let shuiweitxt = jQuery.i18n.prop("sw_shuiwei");
        if (shuiwei.length == 0) return
        let shuiweitxt = paramData.name;
        let option = {
            backgroundColor: "rgba(48, 65, 90, 1)",
            title: {
                // text: obj.stnm,
                // subtext: obj.datasource,
                textStyle: {
                    color: "#ffffff"
                },
                right: 10
                // left: 'center',
                // itemGap: 4
            },
            tooltip: {
                trigger: 'axis',
                axisPointer: {
                    animation: false
                },
                // formatter: function (param) {
                //    console.log(param)
                // }
            },
            legend: {
                data: [shuiweitxt],
                textStyle: {
                    color: "#ffffff"
                },
                right: 10,
                top: 5
            },
            grid: {
                show: true,
                top: 40,
                bottom: 80,
                // left: 60,
                // right: 20
            },
            toolbox: {

            },
            xAxis: [{
                type: 'category',
                boundaryGap: false,
                axisLine: {
                    onZero: false,
                    show: true,
                    lineStyle: {
                        color: "#ffffff"
                    },
                    symbol: ['none', 'arrow']
                },
                nameTextStyle: {
                    color: "#ffffff"
                },
                axisLabel: {
                    color: "#ffffff"
                },
                data: timeData.map(function (str) {
                    return str.substring(5, 16).replace(/ /, "\n");
                })
            }],
            yAxis: [{
                nameTextStyle: {
                    color: "#ffffff"
                },
                axisLine: {
                    show: true,
                    lineStyle: {
                        color: "#ffffff"
                    },
                    symbol: ['none', 'arrow']
                },
                axisLabel: {
                    color: "#ffffff"
                },
                splitLine: {
                    lineStyle: {
                        type: 'dashed'
                    }
                },
                name: `${shuiweitxt} (${paramData?.unit})`,
                type: 'value',
                max: Math.ceil(Math.max.apply(null, shuiwei) + 10),
            }, ],
            series: [{
                name: shuiweitxt,
                type: 'line',
                symbolSize: 5,
                animation: true,
                areaStyle: {},
                itemStyle: {
                    normal: {
                        color: "#FFAA44",
                    }
                },
                lineStyle: {
                    width: 1,
                },
                markArea: {
                    silent: true,

                },
                data: shuiwei
            }, ]
        };
        let mainContainer = document.getElementById(paramData.echartId); //'guangxiHydro4'     
        //用于使chart自适应高度和宽度,通过窗体高宽计算容器高宽
        const resizeMainContainer = function () {
            mainContainer.style.width = window.innerWidth + 'px';
            mainContainer.style.height = window.innerHeight * 0.5 + 'px';
        };
        //设置div容器高宽
        resizeMainContainer();
        // 初始化图表
        let myChart = echarts.getInstanceByDom(mainContainer); //有的话就获取已有echarts实例的DOM节点。
        if (myChart == null) { // 如果不存在,就进行初始化。
            myChart = echarts.init(mainContainer);
        }
        $(window).on('resize', function () { //
            //屏幕大小自适应,重置容器高宽
            resizeMainContainer();
            myChart.resize();
        });
        myChart.setOption(option);
    },

备注:

数据传参,格式如下:

//传参1:

[-15, -4, -1, -1, 3, 13, 26, 42, 58, 70, 74, 69, 54, 31, 3, -25, -50, -67, -75, -73, -62, -49] 

//传参2:

['2023-11-27 01:00:00', '2023-11-27 02:00:00', '2023-11-27 03:00:00', '2023-11-27 04:00:00', '2023-11-27 05:00:00', '2023-11-27 06:00:00', '2023-11-27 07:00:00', '2023-11-27 08:00:00', '2023-11-27 09:00:00', '2023-11-27 10:00:00', '2023-11-27 11:00:00', '2023-11-27 12:00:00', '2023-11-27 13:00:00', '2023-11-27 14:00:00', '2023-11-27 15:00:00', '2023-11-27 16:00:00', '2023-11-27 17:00:00', '2023-11-27 18:00:00', '2023-11-27 19:00:00', '2023-11-27 20:00:00', '2023-11-27 21:00:00', '2023-11-27 22:00:00', '2023-11-27 23:00:00', '2023-11-28 00:00:00'] 

//传参3:

{nodeId: 'swiper-1', name: '温度', iconUrl: 'icon_caoxi', unit: 'cm', echartId: 'guangxiHydro1'} 

 

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

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

相关文章

JOSEF 综合继电器 HJZZ-32/2 AC220V 合闸延时整定0.02-9.99S

系列型号: HJZZ-91分闸、合闸、电源监视综合装置; HJZZ-92/1分闸、合闸、电源监视综合装置; HJZZ-92/2分闸、合闸、电源监视综合装置; HJZZ-92/2A分闸、合闸、电源监视综合装置; HJZZ-92/3分闸、合闸、电源监视综…

乐鑫推出 ESP ZeroCode ExL 模组

乐鑫推出 ESP ZeroCode ExL 模组,由 AWS IoT ExpressLink 提供支持,可简化用户构建兼容 Matter 的云连接设备。 为简化 Matter 设备的开发,乐鑫在年初发布了 ESP ZeroCode 模组和 ESP ZeroCode 控制台。ESP ZeroCode 模组非常适合一些简单设…

Gin框架如何使用并搭建一个后台管理系统 RBAC 权限管理(六)

一、RBAC 实现流程 1 、实现角色的增、删、改、查 2 、实现用户的增、删、改、查,增加修改用户的时候需要选择角色 3 、实现权限的增、删、改、查 (页面菜单) 4 、实现角色授权功能 5 、判断当前登录的用户是否有访问菜单的权限 6 、根据当前登录账户的角色信息动态显…

如何解决msvcp140.dll丢失问题,分享5个亲测有效的方法

在计算机使用过程中,我们经常会遇到一些错误提示,其中之一就是“msvcp140.dll丢失”。这个错误通常会导致某些应用程序无法正常运行。msvcp140.dll是Microsoft Visual C 2015 Redistributable Package的一部分,它是由Microsoft公司提供的运行…

seata集成springboot的一些错误小计

1 seata依赖没找到 dependencies.dependency.version for com.alibaba.cloud:spring-cloud-starter-alibaba-seata:jar is missing. line 126, column 21错误原因:未指定具体的seata版本 解决 <!-- https://mvnrepository.com/artifact/com.alibaba.cloud/spring-cloud-st…

C语言:写一个函数,求字符串的长度,在main函数中输入字符串并输出其长度(指针)

分析&#xff1a; 在程序中&#xff0c;定义一个函数 fix&#xff0c;该函数使用指针变量来访问字符串中的每个字符&#xff0c;并计算出字符串的长度。fix 函数的参数为指向 char 类型的指针变量 p&#xff0c;表示需要计算长度的字符串。 在主函数 main 中&#xff0c;定义一…

全自动气象监测站天气预测的革新者

随着科技的不断进步&#xff0c;我们的生活变得越来越智能化。其中&#xff0c;WX-CQ12 全自动气象监测站以其精准的数据和实时的天气预报&#xff0c;成为了天气预测的革新者。本文将详细介绍全自动气象监测站的优势及其对人们生活的影响。 一、全自动气象监测站的优势 精准…

怎么把视频声音提取成MP3?一分钟解决!

有的时候&#xff0c;我们在看一些综艺访谈节目的时候&#xff0c;觉得里面干货满满&#xff0c;会忍不住想单独把音频下载出来单独听&#xff0c;还可以防止会员到期后不可以再播放&#xff0c;下面就向大家介绍三种好用的视频音乐提取成MP3的方法。 方法一&#xff1a;使用野…

HTTP 和 HTTPS 之间除了安全性区别外,还有哪些区别

HTTP 和 HTTPS 是两种常见的网络协议&#xff0c;它们都是用于在浏览器和服务器之间传输数据的。但是&#xff0c;它们之间也有一些重要的区别&#xff0c;这些区别涉及到数据的安全性、传输性能、使用成本和搜索排名等方面。本文将从以下几个方面来介绍 HTTP 和 HTTPS 的区别&…

loadrunner-导入Fiddler数据包方法

文章目录 一、Fiddler获取相关接口&#xff0c;保存为.saz格式二、在loadrunner12中新建脚本&#xff0c;选择协议为HTTP/HTML&#xff0c;然后在录制选项中录制模式选为捕获的流量文件分析&#xff0c;然后选择刚保存的saz文件三、生成完脚本后&#xff0c;点击“关联”可自动…

安防视频监控/磁盘阵列/集中云存储平台EasyCVR设备录像保活不生效原因是什么?该如何解决?

安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快&#xff0c;可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等&#xff0c;以及支持厂家私有协议与SDK接入&#xff0c;包括海康Ehome、海大宇等设备的SDK等。平台既具备传统安…

c语言实现猴子选大王问题

办法如下: 猴子按1,2…n编号围坐一圈, 从第一只开始按1,2,…m报数, 报m的退出, 从下一只开始, 继续循环报数, 剩下的最后一只猴子就是大王, 编程输出大王的序号。 代码如下&#xff1a; #define _CRT_SECURE_NO_WARNINGS #include<stdio.h>int strarray(int* p, int m…

Goby新功能大揭秘:低感知扫描模式,让你的挖洞之旅更丝滑!

​​0x01 前言 在上一篇文章中&#xff0c;详细介绍了如何利用Goby最新的插件成功打通了全自动化渗透测试流程&#xff0c;并且初步还取得了不错的成绩&#xff0c;很多师傅们都纷纷表示想体验一波。由于账号的限制&#xff0c;暂时还不能第一时间体验。但&#xff01;还记得上…

如何使用Portal产品配置信息展现

门户集成平台可以根据用户的商业需求&#xff0c;以及用户使用特点和所处角色的不同&#xff0c;形成的个性化的应用结构&#xff0c;Portal门户集成平台是一种用于构建企业级门户网站的软件平台&#xff0c;它提供了一个统一的入口&#xff0c;将各种应用程序、信息资源和服务…

DGL中NN模块的构造函数

上图引用自&#xff1a;dgl用户文档第三章(nn模块编写&#xff09; """构造函数完成以下几个任务&#xff1a; 1、设置选项。 2、注册可学习的参数或者子模块。 3、初始化参数。""" import torch.nn as nn from dgl.utils import expand_as_pai…

使用opencv实现图像滤波

1 图像滤波介绍 滤波是信号和图像处理中的基本任务之一&#xff0c;其旨在有选择地提取图像的某些特征&#xff0c;可以用于在给定应用程序的上下文中传达重要信息&#xff0c;例如&#xff0c;去除图像中的噪声、提取所需的视觉特征、图像重采样等。 1.1 图像滤波理论 图像…

【论文解读】基于生成式面部先验的真实世界盲脸修复

论文地址&#xff1a;https://arxiv.org/pdf/2101.04061.pdf 代码地址&#xff1a;https://github.com/TencentARC/GFPGAN 图片解释&#xff1a; 与最先进的面部修复方法的比较&#xff1a;HiFaceGAN [67]、DFDNet [44]、Wan 等人。[61] 和 PULSE [52] 在真实世界的低质量图像…

final关键字-Java

final关键字 一、使用场景1、当不希望类被继承时&#xff0c;可以用final修饰。2、当不希望父类的某个方法被子类覆盖/重写(override)时&#xff0c;可以用final修饰。3、当不希望类的的某个属性的值被修改&#xff0c;可以用final修饰。4、当不希望某个局部变量被修改&#xf…

CSGO搬砖如何选品?选品软件和教程靠谱吗?

说到CSGO搬砖项目&#xff0c;目前平台最火的就是CSGO游戏搬砖。在CSGO搬砖项目中&#xff0c;选品是至关重要的环节&#xff0c;直接影响到利润。而选品软件可以帮助我们更快地了解市场变化、计算成本利润等关键信息&#xff0c;提高选品的效率和准确性。可靠的选品软件还能够…

技术人员都了解,动态代理IP和静态代理IP的区别及适用的场景

动态代理IP和静态代理IP是两种常见的代理IP技术&#xff0c;它们在网络通信中起到了重要的作用。虽然它们都可以用于隐蔽真实的IP地址&#xff0c;但在实际应用中有一些区别和适用的场景。本文将介绍这两种代理IP的区别以及它们适用于哪些场景。 一、静态代理IP 静态代理IP是指…