echarts--Tree的label上添加图片

news2025/1/11 21:50:49
使用echarts的rich富文本,配合lable的formatter去实现

主要代码:label里

 rich: {
                  img1: {
                      backgroundColor: {
                          image: Cloudy,
                      },
                      height: 40
                  }
              },
              formatter: function (param) {
                  var res = "";
                  res += '{img1|}' + param.name;
                  return res;
              },

如果想要哪一节点的label有图标,可以直接在data.label里面添加rich和foematter

全部代码如下:

var Sunny = ROOT_PATH + '/data/asset/img/weather/sunny_128.png';
var Cloudy = ROOT_PATH + '/data/asset/img/weather/cloudy_128.png';
var Showers = ROOT_PATH + '/data/asset/img/weather/showers_128.png';   
  // Sunny 、Cloudy 、Showers 这三张图片,在script里面写成 var Showers  = require('图片路径'),在rich里面调用即可

var data = {
      "name": "flare",
      "label": {
          width: 100,
          height: 40,
          lineHeight: 40,
          borderWidth: 0.5,  // 边框宽度
          borderRadius: 20,  // 边框圆角
          borderColor: "#B034FF",   // 文字块的边框色
          backgroundColor: '#fff',
          rich: {
                    img1: {
                        backgroundColor: {
                            image: Cloudy,
                        },
                        height: 40
                    }
                },
                formatter: function (param) {
                    var res = "";
                    res += '{img1|}' + param.name;
                    return res;
                },
      },
      "children": [
          {
              "name": "data",
              "children": [
                  {
                      "name": "converters",
                      "children": [
                          {"name": "Converters", "value": 721},
                          {"name": "DelimitedTextConverter", "value": 4294}
                      ]
                  },
                  {
                      "name": "DataUtil",
                      "value": 3322
                  }
              ]
          },
          {
              "name": "display",
              "children": [
                  {"name": "DirtySprite", "value": 8833},
                  {"name": "LineSprite", "value": 1732},
              ]
          },
          {
              "name": "flex",
              "children": [
                  {"name": "FlareVis", "value": 4116}
              ]
          },
          {
              "name": "query",
              "children": [
                  {"name": "AggregateExpression", "value": 1616},
                  {"name": "And", "value": 1027},
                  {"name": "Comparison", "value": 5103},
                  {
                      "name": "methods",
                      "children": [
                          {"name": "add", "value": 593},
                          {"name": "and", "value": 330},
                          {"name": "average", "value": 287},
                          {"name": "count", "value": 277},
                      ]
                  },
              ]
          },
          {
              "name": "scale",
              "children": [
                  {"name": "IScaleMap", "value": 2105},
                  {"name": "LinearScale", "value": 1316}
              ]
          }
      ]
    };

    var option = {
      tooltip: {
          trigger: 'item',
          triggerOn: 'mousemove'
      },
      series:[
          {
              type: 'tree',
              id: 0,
              name: 'tree1',
              data: [data],

              top: '10%',
              left: '8%',
              bottom: '22%',
              right: '20%',
              
             
                initialTreeDepth: 1,
            //   symbol: spirit,  // 1
            //   symbolSize: 20,

              edgeShape: 'polyline', // 折线
              edgeForkPosition: '63%', // 正交布局下当边的形状是折线时,子树中折线段分叉的位置。这里的位置指的是分叉点与子树父节点的距离占整个子树高度的百分比。默认取值是 '50%',可以是 ['0', '100%'] 之间。
                                       // 注意:该配置项只有在 edgeShape = 'polyline' 时才有效。
            //   initialTreeDepth: 3,  // 树图初始展开的层级(深度)

              lineStyle: {
                  width: 1, // 线的宽度
                  color: '#B034FF'
              },

              label: {
                  position: 'right',
                  distance: 20,
                  verticalAlign: 'middle',
                  align: 'center',
                  color: "#B034FF",
                  width: 100,
                  height: 40,
                  lineHeight: 40,
                  borderWidth: 0.5,  // 边框宽度
                  borderRadius: 20,  // 边框圆角
                  borderColor: "#B034FF",   // 文字块的边框色
                  backgroundColor: "#fff",  // 文字块的背景色
                  rich: {
                    img1: {
                        backgroundColor: {
                            image: Sunny,
                        },
                        height: 40
                    }
                },
                formatter: function (param) {
                    var res = "";
                    res += param.name + '{img1|}';
                    return res;
                },
              },
              leaves: { // 叶子节点的特殊配置,如上面的树图实例中,叶子节点和非叶子节点的标签位置不同。
                  label: { // 描述了叶子节点所对应的文本标签的样式。
                      position: 'right',
                      verticalAlign: 'middle',
                      align: 'center',
                      color: '#B034FF',
                      width: 100,
                      height: 40,
                      lineHeight: 40,
                      borderWidth: 0.5,  // 边框宽度
                      borderRadius: 20,  // 边框圆角
                      borderColor: "#B034FF",   // 文字块的边框色
                      backgroundColor: "#fff",  // 文字块的背景色
                      rich: {
                        img1: {
                            backgroundColor: {
                                image: Showers,
                            },
                            height: 40
                        }
                    },
                    formatter: function (param) {
                        var res = "";
                        res += param.name + '{img1|}';
                        return res;
                    },
                  }
              },

              expandAndCollapse: true, // 子树折叠和展开的交互,默认打开
              animationDuration: 550,
              animationDurationUpdate: 750
          }
      ]
    }

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

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

相关文章

基于贝叶斯优化的卷积神经网络-循环神经网络混合模型的的模拟股票时间序列预测(MATLAB R2021B)

将机器学习和深度学习方法运用到股市分析中, 不仅具有一定的理论价值, 也具有一定的实践价值。从理论价值上讲, 中国的量化投资技术(投资观念、方法与决策等)还不够成熟, 尚处在起步阶段, 能够将量化投资技术运用到投资决策中的公司寥寥无几。目前, 国内…

程序员学CFA——经济学(五)

经济学(五) 货币政策与财政政策基本术语货币政策货币货币的功能货币的定义货币的创造过程货币的供给和需求费雪效应 中央银行中央银行的职能中央银行的目标与通货膨胀的成本中央银行的有效性 货币政策工具货币传导机制货币政策的目标与形式货币政策的目标…

AIGC时代算法工程师的面试秘籍(2024.6.10-6.23第十六式) |【三年面试五年模拟】

写在前面 【三年面试五年模拟】旨在整理&挖掘AI算法工程师在实习/校招/社招时所需的干货知识点与面试方法,力求让读者在获得心仪offer的同时,增强技术基本面。也欢迎大家提出宝贵的优化建议,一起交流学习💪 欢迎大家关注Rocky…

还以网站建设为主营?赶紧转!除非你的网站做比他们还漂亮

案例一:某上市公司2019年找A公司做了一个官网,网站做了三年多,到现在没有上线,该公司业务没受任何影响,一直蒸蒸高日上。案例二:我公司也有自己官网,这么多年页面啥流量,一样不影响我…

001:开源交易系统开发实战开篇

本专栏采用融入【主力思维】的方法学,包含数据抓取、特征模型开发、历史验证回归测试、每日动态风险评估管理等技术,较大的增强股票投资胜率,让IT开发者拥有一套实用的属于自己思路的专用交易软件。 先简要介绍下系统运行的成果和项目架构&a…

这玩意终于有免费的了———Navicat Premium Lite

免费啦!!!X!!! 免费啦!!!X!!! 免费啦!!!X!!! 去下载吧&…

uniapp应用如何实现传感器数据采集和分析

UniApp是一种跨平台的应用开发框架,它支持在同一份代码中同时开发iOS、Android、H5等多个平台的应用。在UniApp中实现传感器数据采集和分析的过程可以分为以下几个步骤: 引入相关插件或库 UniApp通过插件或库的形式扩展功能。对于传感器数据采集和分析&…

无人机对地面运动目标定位---获取目标的移动方向和速度

目录 一、引子 我们利用单目无人机通过等时间间隔拍照的形式对地面某移动目标进行定位,当前,我们已经获得了每张相片上该目标的三维坐标,并且知道该无人机在飞行过程中拍照的时间间隔,那么我们就可以通过一定的计算,得…

Docker学习笔记(一)概念理解

一、什么是docker容器 Docker容器是一种轻量级、可移植的软件封装技术,它允许开发者将应用程序及其依赖、配置文件、运行环境等打包到一个独立的、自包含的执行单元中。容器与虚拟机相似,都提供了隔离的运行环境,但容器更加轻量级&#xff0c…

职业本科扩容:教育改革的新篇章与挑战

高考结束后,李文莉同学并没有如释重负的感觉,因为她正在为选学校、选专业而纠结。幸运的是,今年我国职业本科院校又增加了十多所,这对学习成绩稍差、但动手能力较强的她来说,无疑是个好消息。这几天,她已将…

《数字图像处理与机器视觉》案例四 基于分水岭算法的粘连物体的分割与计数

一、引言 分水岭算法(Watershed Algorithm),是一种基于拓扑理论的数学形态学的分割方法,其基本思想是把图像看作是测地学上的拓扑地貌,图像中每一点像素的灰度值表示该点的海拔高度,每一个局部极小值及其影…

【Python123题库】#判断闰年 #判断奇偶数 #分段函数A

禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/140079827 参考教程:B站视频讲解——https://space.bilibili.com/3546616042621301 有帮助麻烦点个赞 ~ ~ Python123题库 判断闰年判断奇偶数分段函数A 判断闰年 类型&am…

静态方法与实例方法的区别

静态方法与实例方法的区别 1、静态方法(Static Methods)1.1 调用方式1.2 访问权限 2、实例方法(Instance Methods)2.1 调用方式2.2 访问权限 3、总结 💖The Begin💖点点关注,收藏不迷路&#x1…

DDR3(一)

目录 1 SDRAM1.1 同步动态随机存储器1.2 位宽1.3 SDRAM结构1.4 SDRAM引脚图 2 SDRAM操作指令2.1 读写指令2.2 刷新和预充电2.3 配置模式寄存器2.4 读/写突发2.5 数据屏蔽 SDRAM是DDR3的基础,在学习DDR3之前,我们先来学习一下SDRAM的相关知识。 1 SDRAM …

Spring容器生命周期中如前置运行程序和后置运行程序

在Spring容器加入一个实现了BeanPostProcessor接口bean实例,重写postProcessBeforeInitialization、postProcessAfterInitialization方法,在方法里面写具体的实现,从而达到Spring容器在初如化前或销毁时执行预定的程序,方法如下&a…

浅谈 Linux 中的 core dump 分析方法

文章目录 一、什么是 core dump二、发生 core dump 的原因1. 空指针或非法指针引起 core dump2. 数组越界或指针越界引起的 core dump3. 数据竞争导致 core dump4. 代码不规范 三、core dump 分析方法1. 启用 core dump2. 触发 core dump2-1. 因空指针解引用而崩溃2-2. 通过 SI…

S272钡铼技术4G无线RTU支持多路DIN输入和模拟量转换至4G网络

钡铼第四代RTU S272是一款先进的工业级4G远程遥测终端,为各种远程工业数据采集和控制系统提供了高效解决方案。结合了现代通信技术和多功能的输入输出接口,S272不仅支持多路数字量和模拟量输入,还具备灵活的扩展性和强大的控制功能&#xff0…

如何利用小猪APP分发轻松将网页封装成APP

什么是网页封装APP? 假设你有一个非常棒的网站,但你希望用户能更方便地在手机上访问它。你可能会考虑将该网页封装成一个APP。封装APP其实就是将网页内容打包成一个移动应用,这样用户可以像使用其他APP一样方便地使用你的服务。 APP分发www…

大华设备接入GB28181/GAT1400视频汇聚管理平台EasyCVR安防监控系统的具体操作步骤

智慧城市/视频汇聚/安防监控平台EasyCVR兼容性强,支持多协议接入,包括国标GB/T 28181协议、GA/T 1400协议、部标JT808协议、RTMP、RTSP/Onvif协议、海康Ehome、海康SDK、大华SDK、华为SDK、宇视SDK、乐橙SDK、萤石云SDK等,并能对外分发RTMP、…

动物检测yolo格式数据集(水牛 、大象 、犀牛 、斑马四类)

动物检测数据集 1、下载地址: https://download.csdn.net/download/qq_15060477/89512588?spm1001.2101.3001.9500 2、数据集介绍 本数据集含有四种动物可以检测,分别是水牛 、大象 、犀牛 、斑马四类,数据集格式为yolo格式,…