关于echars 操作legend 解决方案

2024-02-01 17:20

本文主要是介绍关于echars 操作legend 解决方案,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

需求:
1、legend 图例需要是虚线
https://frontend.devrank.cn/traffic-information/7208578249369765947 (重点)
https://blog.csdn.net/weixin_48400717/article/details/128935213

2、可单选 和 多选

3、lengend 和 sever 数据name 保持一致

4、

legend:[{selectedMode:'single', // 单选itemWidth: 14,itemHeight: 4,top:20,icon:'rect',textStyle: {fontSize: 14,height: 12,color: '#fff',rich: {a: {verticalAlign: 'media',},},},}],

3、dom.vue 页面

<zmjEcharts ref="supHeiEcharts" title="支架压力" echartsId="supHeiEcharts" :isEchartAbsolute="true">
</zmjEcharts>

js 页面

import { echartsOptions } from '@/components'
import dragImg from '@/assets/image/line/line-9.png'
export const supHeiEcharts = (obj, haveFourCol) => {const worknce = 333console.log((obj[0]?obj[0][0]:null), haveFourCol, '--------')const markLine = {symbol: 'none',data: [{lineStyle: {type: 'dashed',color: '#FA7272',},label:{position: 'insideEndTop',fontSize: '10',formatter:`333: {c}`,color:'#FA7272',},yAxis: workingResistance || 'none',}],}const leg = {selectedMode:haveFourCol?'single':'',itemWidth: 14,itemHeight: 4,// top:0,icon:'rect',textStyle: {fontSize: 14,height: 12,color: '#fff',rich: {a: {verticalAlign: 'media',},},},}let defaultOption = JSON.parse(JSON.stringify(echartsDefaultOptions))const options2 = {xAxis:{...defaultOption.xAxis[0],data: obj.finalSupportPressure?.map(item => {return item.dateTime}),type: 'category',},color:['#FFDB26', '#579AFF', '#FF5962'],legend: [{...leg,right: '51%',data: [{name: '11',icon: 'roundRect',},],},{...leg,right: '47%',data: [{name: '22',icon: 'roundRect',},],},{right: '40.8%',...leg,itemWidth: 14, // 图例图形的宽度itemHeight: 1, // 图例图形的高度data: [{name: '33', // 图例文字内容icon: `image://${dragImg}`,},],},],series : [{data: obj.initialSupportPressure?.map(item => {return item.value}),type: 'line',name: '11',},{data: obj.finalSupportPressure?.map(item => {return item.value}),type: 'line',name: '22',},{name:'33',type:'line',markLine: markLine,},],}const options4 = {xAxis:{...defaultOption.xAxis[0],data: (obj[0]?obj[0][0]:null)?.data.map(item => {return item.time}),type: 'category',},color:['#FFDB26', '#579AFF', '#72BF68', '#01C8CF', '#FF5962'],legend:[{data:[{name: '11', icon: 'rect'},{name: '22', icon: 'rect'},{name: '33', icon: 'rect'},{name: '44', icon: 'rect'},// 重点设置{name: '55',itemStyle: { opacity: 0 },lineStyle:{type:'dotted',},},],selectedMode:'multiple',itemWidth: 14,itemHeight: 4,top:20,textStyle: {fontSize: 14,height: 12,color: '#fff',rich: {a: {verticalAlign: 'media',},},},},],series:[{data: (obj[0]?obj[0][0]:null)?.data.map(item => {return item.value}),type: 'line',name: '11',},{data: (obj[1]?obj[1][0]:null)?.data.map(item => {return item.value}),type: 'line',name: '22',},{data: (obj[2]?obj[2][0]:null)?.data.map(item => {return item.value}),type: 'line',name: '33',},{data: (obj[3]?obj[3][0]:null)?.data.map(item => {return item.value}),type: 'line',name: '44',},// 重点设置{name:'55',type:'line',symbol:'none',markLine: markLine,},],}const options = !haveFourCol?options2:options4// 判断是 否存在 多数据const optionsBlo = !haveFourCol?(obj.finalSupportPressure && obj.finalSupportPressure.length):(obj[0] && obj[0].length)if (optionsBlo){return {dataZoom: [{type: 'inside',},{type: 'slider',show: false,},],yAxis: {...defaultOption.yAxis[0],type: 'value',max:haveFourCol?60:null,},grid: {left: 50,right: 25,top: 60,bottom: 30,},tooltip: {trigger: 'axis', // 触发类型;轴触发,axis则鼠标hover到一条柱状图显示全部数据,item则鼠标hover到折线点显示相应数据,axisPointer: {  // 坐标轴指示器,坐标轴触发有效,type: 'line', // 默认为line,line直线,cross十字准星,shadow阴影crossStyle: {color: '#fff',},},},...options,}}else {return {title: {left: 'center',top: 'center',textStyle: {fontSize: 14,},subtext: '暂无数据!',},}}
}

这篇关于关于echars 操作legend 解决方案的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

MySQL游标和触发器的操作流程

《MySQL游标和触发器的操作流程》本文介绍了MySQL中的游标和触发器的使用方法,游标可以对查询结果集进行逐行处理,而触发器则可以在数据表发生更改时自动执行预定义的操作,感兴趣的朋友跟随小编一起看看... 目录游标游标的操作流程1. 定义游标2.打开游标3.利用游标检索数据4.关闭游标例题触发器触发器的基

在C#中分离饼图的某个区域的操作指南

《在C#中分离饼图的某个区域的操作指南》在处理Excel饼图时,我们可能需要将饼图的各个部分分离出来,以使它们更加醒目,Spire.XLS提供了Series.DataFormat.Percent属性,... 目录引言如何设置饼图各分片之间分离宽度的代码示例:从整个饼图中分离单个分片的代码示例:引言在处理

Python列表的创建与删除的操作指南

《Python列表的创建与删除的操作指南》列表(list)是Python中最常用、最灵活的内置数据结构之一,它支持动态扩容、混合类型、嵌套结构,几乎无处不在,但你真的会创建和删除列表吗,本文给大家介绍... 目录一、前言二、列表的创建方式1. 字面量语法(最常用)2. 使用list()构造器3. 列表推导式

Go异常处理、泛型和文件操作实例代码

《Go异常处理、泛型和文件操作实例代码》Go语言的异常处理机制与传统的面向对象语言(如Java、C#)所使用的try-catch结构有所不同,它采用了自己独特的设计理念和方法,:本文主要介绍Go异... 目录一:异常处理常见的异常处理向上抛中断程序恢复程序二:泛型泛型函数泛型结构体泛型切片泛型 map三:文

idea粘贴空格时显示NBSP的问题及解决方案

《idea粘贴空格时显示NBSP的问题及解决方案》在IDEA中粘贴代码时出现大量空格占位符NBSP,可以通过取消勾选AdvancedSettings中的相应选项来解决... 目录1、背景介绍2、解决办法3、处理完成总结1、背景介绍python在idehttp://www.chinasem.cna粘贴代码,出

MySQL基本表查询操作汇总之单表查询+多表操作大全

《MySQL基本表查询操作汇总之单表查询+多表操作大全》本文全面介绍了MySQL单表查询与多表操作的关键技术,包括基本语法、高级查询、表别名使用、多表连接及子查询等,并提供了丰富的实例,感兴趣的朋友跟... 目录一、单表查询整合(一)通用模版展示(二)举例说明(三)注意事项(四)Mapper简单举例简单查询

Nginx概念、架构、配置与虚拟主机实战操作指南

《Nginx概念、架构、配置与虚拟主机实战操作指南》Nginx是一个高性能的HTTP服务器、反向代理服务器、负载均衡器和IMAP/POP3/SMTP代理服务器,它支持高并发连接,资源占用低,功能全面且... 目录Nginx 深度解析:概念、架构、配置与虚拟主机实战一、Nginx 的概念二、Nginx 的特点

MySQL 数据库进阶之SQL 数据操作与子查询操作大全

《MySQL数据库进阶之SQL数据操作与子查询操作大全》本文详细介绍了SQL中的子查询、数据添加(INSERT)、数据修改(UPDATE)和数据删除(DELETE、TRUNCATE、DROP)操作... 目录一、子查询:嵌套在查询中的查询1.1 子查询的基本语法1.2 子查询的实战示例二、数据添加:INSE

使用Python在PDF中绘制多种图形的操作示例

《使用Python在PDF中绘制多种图形的操作示例》在进行PDF自动化处理时,人们往往首先想到的是文本生成、图片嵌入或表格绘制等常规需求,然而在许多实际业务场景中,能够在PDF中灵活绘制图形同样至关重... 目录1. 环境准备2. 创建 PDF 文档与页面3. 在 PDF 中绘制不同类型的图形python

Java 操作 MinIO详细步骤

《Java操作MinIO详细步骤》本文详细介绍了如何使用Java操作MinIO,涵盖了从环境准备、核心API详解到实战场景的全过程,文章从基础的桶和对象操作开始,到大文件分片上传、预签名URL生成... 目录Java 操作 MinIO 全指南:从 API 详解到实战场景引言:为什么选择 MinIO?一、环境