当前位置: 首页 > news >正文

echarts 折柱混合图,渐变切图例和x轴滚动可自动切换

echarts 折柱混合图,渐变切图例和x轴滚动可自动切换,并且自定义图例,一般使用在大屏项目上,效果如图

getSZCharts(val){this.mySZFXChart=this.$echarts.init(document.getElementById("isSZCharts"));let bardata1=[6,6,5,3,8];let bardata2=[8,8,8,6,7];let lineData=[9,9,9,9,9,9,9,9,9];let categoryData=getDateArrayFromMonthStart();// 计算 dataZoom 的窗口大小(显示多少个数据点)constzoomWindowSize=12;// 同时显示12个数据点,可根据需要调整consttotalPoints=categoryData.length;constendPercent=(zoomWindowSize/totalPoints)*100;let option={grid:{top:"18%",left:"5%",right:"3%",bottom:"23%",},legend:{itemWidth:20,itemHeight:20,itemGap:33,left:"center",top:"4%",padding:0,textStyle:{color:"#fff",fontSize:30,padding:[8,0,0,6],fontFamily:"Source Han Sans CN",},data:[{name:"进水水质",icon:"rect",itemStyle:{color:"#1097ff",borderWidth:0},},{name:"出水水质",icon:"rect",itemStyle:{color:"#00ffff",borderWidth:0},},{name:"出水标准",icon:"path://M0,0 L20,0 L20,4 L0,4 Z",// 20x4 的矩形路径itemStyle:{color:"#FFBE32",borderWidth:0,},},],},tooltip:{trigger:"axis",backgroundColor:"transparent",textStyle:{color:"#A0B9C3",fontSize:14,fontWeight:"bold",fontFamily:"PingFangSC, PingFang SC",},formatter:function(params){let filtered=params;constseen=newMap();filtered=filtered.filter((item)=>{if(seen.has(item.seriesName))returnfalse;seen.set(item.seriesName,true);returntrue;});if(!filtered.length)return"";let result="";filtered.forEach((item)=>{result+=`<div style="display:flex; justify-content:space-between; gap:20px;font-size:22px;margin-bottom:14px;"><span>${item.name}:${item.seriesName}</span><span style="font-weight:bold;">${item.value}</span></div>`;});returnresult;},},xAxis:{type:"category",axisLabel:{textStyle:{color:"#fff",fontSize:28,fontFamily:"Source Han Sans CN",},formatter:function(data){returndata;},},axisTick:{show:false,},splitLine:{show:false,},axisLine:{lineStyle:{color:"#216CA0",},show:true,},data:categoryData,interval:categoryData.length>12?1:categoryData.length>20?3:0,},yAxis:{name:"mg/L",nameTextStyle:{color:"#D1DEEE",fontSize:24,padding:[0,8,12,0],fontFamily:"Source Han Sans CN",},splitLine:{show:true,lineStyle:{color:"rgba(33, 108, 160, 0.4)",type:"dashed",},},axisLine:{show:false,},axisLabel:{show:true,textStyle:{color:"#D1DEEE",},fontSize:24,fontFamily:"Source Han Sans CN",formatter:function(value){if(value===0){returnvalue;}returnvalue;},},axisTick:{show:false,},},dataZoom:[{type:"slider",show:true,height:10,xAxisIndex:[0],bottom:"8%",start:0,end:endPercent,// 动态设置窗口大小handleIcon:"path://M306.1,413c0,2.2-1.8,4-4,4h-59.8c-2.2,0-4-1.8-4-4V200.8c0-2.2,1.8-4,4-4h59.8c2.2,0,4,1.8,4,4V413z",handleSize:"110%",handleStyle:{color:"#d3dee5",},textStyle:{color:"#fff",},borderColor:"#90979c",},{type:"inside",show:true,height:15,start:0,end:endPercent,},],series:[{name:"出水水质",data:bardata2,type:"bar",barCategoryGap:"20%",barWidth:"16px",barGap:0.5,itemStyle:{color:{x:0,y:1,x2:0,y2:0,type:"linear",colorStops:[{offset:0,color:"rgba(16, 151, 255,1)",},{offset:1,color:"rgba(16, 151, 255,0)",},],},borderWidth:1,borderColor:"#1097ff",},},{name:"进水水质",data:bardata1,type:"bar",barCategoryGap:"20%",barWidth:"16px",barGap:0.5,itemStyle:{color:{x:0,y:1,x2:0,y2:0,type:"linear",colorStops:[{offset:0,color:"rgba(0, 251, 252,1)",},{offset:1,color:"rgba(0, 251, 252,0)",},],},borderWidth:1,borderColor:"#00FFFF",},},{name:"出水标准",type:"line",symbol:"none",lineStyle:{normal:{width:1,},},itemStyle:{normal:{color:"#FFBE32",},},smooth:true,data:lineData,},],};// 先设置图表this.mySZFXChart.setOption(option,true);// 自动轮播 + dataZoom 自动移动let len=0;let intervalId=setInterval(()=>{if(len>=categoryData.length){len=0;// 重置 dataZoom 到起始位置this.mySZFXChart.dispatchAction({type:"dataZoom",dataZoomIndex:0,start:0,end:endPercent,});}// 显示 tooltipthis.mySZFXChart.dispatchAction({type:"showTip",seriesIndex:0,dataIndex:len,});// 移动 dataZoom 使当前显示的点居中constcurrentIndex=len;conststartPercent=Math.max(0,Math.min(100-endPercent,((currentIndex-zoomWindowSize/2)/totalPoints)*100));this.mySZFXChart.dispatchAction({type:"dataZoom",dataZoomIndex:0,start:startPercent,end:startPercent+endPercent,});len++;},6000);// 保存定时器ID,以便在组件销毁时清除this.autoPlayInterval=intervalId;}

一定要清除定时器

beforeDestroy(){if(this.autoPlayInterval){clearInterval(this.autoPlayInterval);}},
http://www.jsqmd.com/news/690275/

相关文章:

  • 06华夏之光永存:黄大年茶思屋13期5题解法总结篇——漏洞签名高性能检测算法突破,筑牢华为安全霸业根基
  • Arduino MKR IoT Carrier Rev2开发板与BME688传感器应用指南
  • **脉冲计算新范式:用 Rust实现高效神经形态硬件加速器的代码实践**在传统冯·诺依曼架构逐渐逼近物理极限的今天,**脉冲计算
  • 云原生聊天机器人开发实战:架构设计与性能优化
  • Weka机器学习工具入门:从数据探索到模型优化的完整指南
  • SAP AVC实战:从MTO订单到交付的可配置物料全链路解析
  • 超详细!网络安全全套学习路线 + 精华自学笔记,零基础直接照搬
  • 2026年评价高的辽宁4D商用厨房设备精选推荐公司 - 行业平台推荐
  • 深度解析:基于 Docker 与异构计算的 AI 视频管理平台架构实现(支持 GB28181/RTSP 与源码交付)
  • 分布式量子计算中的贝尔对与表面码技术解析
  • Unlock-Music:浏览器端音乐文件解密工具的技术解析与应用指南
  • FFmpeg 官网及文档
  • LangChain之大模型介绍
  • 融合SDConv与空间注意力:一种面向PCBA微小缺陷的高效X射线检测方案
  • 2026年零基础日语网课可靠度第三方实测排行:成人日语网课,日语一对一网课,日语入门,日语口语培训,实力盘点! - 优质品牌商家
  • 从知识库到知识底座:AI落地关键,企业如何构建可理解、可复用的知识体系?
  • 【嵌入式C安全适配LMM终极指南】:20年老兵亲授3大不可绕过的内存隔离方案
  • 【数电实战】从零到一:逻辑函数五大表示法的核心要点与高效转换指南
  • JetBrains IDE试用期重置终极指南:简单三步无限续杯
  • 视频高清直播点播/音视频点播/云点播/云直播EasyDSS一体化云平台重塑智慧校园数字协作生态
  • 2026年q2佛山船板供应商性价比排行实测盘点:佛山钢材厂家直销,佛山钢材打砂上油漆,佛山钢材批发,排行一览! - 优质品牌商家
  • 2026科技风向标:大模型、Agent、具身智能,谁将引领AI新纪元?
  • 别只看CUDA核心!给AI开发者的RTX40系显卡选购指南:Tensor Core、显存和散热才是关键
  • 英雄联盟Akari助手:高效开源自动化游戏辅助工具包完整指南
  • [特殊字符] ApiMesh:新一代统一AI网关,让大模型调用像访问REST API一样简单
  • GCC 14+ 与 Clang 18 兼容性实测报告,2026内存安全插件安装失败?这5步全解决!
  • 基于go语言编辑使用的mysql数据库:从环境配置到CRUD实战
  • 基于Air8101的RTMP推流方案(开源)及应用搭建说明
  • C++ MCP网关接入提速5.8倍的关键路径:从协议解析到内存池优化的7层穿透式调优指南
  • 3个月速成模型大师!2026年大模型进阶秘籍,薪资直接翻倍!