【vue2+echarts】树状图(标签显示不全、节点文本过长换行等问题解决)

news2024/11/25 21:29:46

前言

树状图的使用。官方文档

正文

关于根节点标签显示不全问题解决

一开始的series->边距设置的如下。所以根节点的标签只显示了一半多出来。

            top: "1%",
            left: "7%",
            bottom: "1%",
            right: "20%",

后面修改成

    top: "1%",
    left: "15%",
    bottom: "1%",
    right: "15%",

就能完整显示了。
效果如下:
在这里插入图片描述
其他方向上被遮挡了也同理,修改上下左右的宽度即可。

节点文字过长的问题解决

方法1:约束series->label->width属性宽度,设置series->label->overflow属性为‘break’ 【来自参考1】:有提供效果和代码,可以参考使用
缺点:如果使用了边框和背景色,那么上述方法由于固定了宽度,就会影响其他较短的文本。(所以如果不需要使用边框+背景色,这个方法简单且方便)
方法2:修改series->label,使用formatter对内容进行处理。
效果:在这里插入图片描述

            label: {
              position: "left",
              verticalAlign: "middle",
              align: "right",
              fontSize: 12,
              color: "#FFFFFF",
              backgroundColor: "#525252",
              borderColor: "#777777",
              borderWidth: 1,
              borderType: "solid",
              formatter: function (params) {
                var text = params.name;
                var len = text.length;

                var lines = [];
                var line = "";
                var width = 0;

                for (var i = 0; i < len; i++) {
                  var char = text.charAt(i);
                  var charWidth = /[^\x00-\xff]/.test(char) ? 12 : 6; // 判断字符是否是中文字符
                  var lineWidth = width + charWidth;

                  if (lineWidth > 180) {
                    lines.push(line);
                    line = "";
                    width = 0;
                  }

                  line += char;
                  width += charWidth;
                }
                lines.push(line);
                var wrapText = lines.join("\n");
                return "{wrap|" + wrapText + "}";
              },

              rich: {
                wrap: {
                  padding: [4, 4, 4, 4],
                  width: "auto", // 自适应宽度
                  overflow: "break",
                  // textOverflow: "ellipsis",
                },
              },
            },

主要思路就是:根据字体的大小和字数进行判断,如果超出了180(最大宽度),就手动加一个换行符。汉字的宽度为12px(字号),其他的宽度为6px(一半)

ps.formatter好像只能改标签的内容。本来想直接动态修改width+使用方法1的,但是无效了。

容器高度自定义

ECharts树节点过多时,不想要缩放,调整容器高度(宽度):带图片效果图,也有讲一下原理
echarts 树状图节点太多导致节点重叠,如何调整:vue里使用的方法。思路其实和上一个是一样的。

自定义symbol

参考:

  1. echarts树形图节点及提示框文字过长问题

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

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

相关文章

css基础知识十八:CSS如何画一个三角形?原理是什么?

一、前言 在前端开发的时候&#xff0c;我们有时候会需要用到一个三角形的形状&#xff0c;比如地址选择或者播放器里面播放按钮 通常情况下&#xff0c;我们会使用图片或者svg去完成三角形效果图&#xff0c;但如果单纯使用css如何完成一个三角形呢&#xff1f; 实现过程似乎…

Maven安装与配置以及idea配置Maven

文章目录 一、安装本地Maven 二、安装 三、配置环境变量 四、配置settings文件 五、idea配置 一、安装本地Maven 选择你需要的maven版本下载&#xff1a;官网下载传送门 我使用的是3.6.1版本&#xff1a;maven-3.6.1-bin.zip ​ 二、安装 把下载好的maven压缩包解压到…

小样本目标检测综述__刘浩宇(导航与控制2021)论文阅读

小样本目标检测综述__刘浩宇(导航与控制2021)阅读 0、引言 早期采用了大量标注样本回归候选框的位置&#xff0c;但后来目标集和训练集数据分布不同导致检测效果下降。 对于没有大量样本支持的小样本检测应用就需要使用先验知识来弥补样本的不足。 可以分为三类&#xff1a…

Redis实战——商户查询(二)

缓存穿透 缓存穿透 &#xff1a;客户端请求的数据在缓存中和数据库中都不存在&#xff0c;这样缓存永远不会生效&#xff0c;这样的请求都会访问到数据库&#xff0c;这样的大量请求同时过来访问这种不存在的数据&#xff0c;这些请求就都会访问到数据库&#xff0c;对数据库造…

js:使用diff.js实现文本内容差异比较

实现效果 目录 简介安装示例1、json比较diffJson2、按行比较diffLines3、比较数组diffArrays 总结参考资料 简介 A javascript text differencing implementation. 译文&#xff1a;javascript文本差异实现。 相关文档 github https://github.com/kpdecker/jsdiffnpmjs htt…

YoloV8改进---注意力机制:高斯上下文变换器GCT,性能优于ECA、SE等注意力模块 | CVPR2021

目录 1.GCT介绍 实验结果 2.GCT引入到yolov8 2.1 修改modules.py中&#xff1a; 2.2 加入tasks.py中&#xff1a; 2.3 yolov8_GCT.yaml 3.YOLOv8魔术师专栏介绍 1.GCT介绍 论文&#xff1a;https://openaccess.thecvf.com/content/CVPR2021/papers/Ruan_Gaussian_Context_…

MySQL数据库架构

MySQL数据库架构 MySQL架构自顶向下大致可以分为连接层 , SQL层 , 存储引擎层 , 物理文件层。架构如下 连接层 -- 查看最大连接数 show variables like %max_connections%;客户端连接器&#xff0c;MySQL向外提供交互接口连接各种不同的客户端。 客户端/应用程序&#xff1a;客…

7.3.6 【Linux】磁盘/文件系统参数修订

mknod 用到的磁盘 /dev/vda 的相关设备代码如下&#xff1a; 上表当中 252 为主要设备代码 &#xff08;Major&#xff09; 而 0~5 则为次要设备代码 &#xff08;Minor&#xff09;。 我们的Linux 核心认识的设备数据就是通过这两个数值来决定的&#xff01;举例来说&#xf…

如何批量将PDF转换为图片?

在生活工作中&#xff0c;我们会处理很多电子合同。这些电子合同一般是PDF格式&#xff0c;不但存储空间大&#xff0c;且预览起来不太便捷&#xff0c;需要我们转换为图片格式更方便预览。如果人工一一处理比较繁琐复杂&#xff0c;有没有什么方案可以快速将pdf转换为图片呢&a…

如果想用unity做一个项目作为面试作品,至少该达到什么样的标准?

本文仅针对题目“如果想用unity做一个项目作为面试作品&#xff0c;至少该达到什么样的标准&#xff1f;”回答内容。 明确职业目标 首先要明确自身的职业目标&#xff0c;不同的行业、公司、游戏类型、岗位对作品的要求是不同的。 去什么样的行业&#xff1f;unity可做的有很…

python的IOError使用

try:npzfile np.load(calibrate.npz)mtx npzfile[mtx]dist npzfile[dist]except IOError:calibrate()python语言IOError错误一般多发生在对文件操作报错时&#xff0c;表示要打开的文件不存在

PostpreSQL内核学习-Chapter4 Foreign Data Wrapper(FDW)

FDW连接 preparations 两个在不同主机&#xff08;满足TCP/IP连接是分属于不同IP地址下&#xff09;&#xff08;如果是安装PG源码&#xff09;进入源码目录下面的/contrib/postgres_fdw/&#xff0c;然后用make & make install编译和安装 [rootlocalhost /]# cd 源码存…

为什么truncate函数(四舍五入)是x+0.4999997而不是+0.5?

目录 float的不精确表示 0.5的舍入方法 该方法的漏洞 0.4999997f舍入的结果错误 以0.4999997f改进舍入方法 可以用0.49999996、0.49999998或者0.49999999替换0.49999997吗&#xff1f; 在做舍入函数研究时&#xff0c;发现函数中实现四舍五入的trunc函数大概采用的逻辑是floor(…

LVS负载均衡-----DR模式

目录 1.DR模式原理 2.DR 模式的特点&#xff1a; 3.LVS-DR中的ARP问题 问题原因&#xff1a; 解决方法&#xff1a; 问题二&#xff1a;返回报文时源地址使用VIP&#xff0c;导致网关设备的ARP缓存表紊乱 解决方法&#xff1a; 4.DR模式 LVS负载均衡群集部署 1.配置负…

python进程线程问题

参考链接&#xff1a; 代码可去原博文复制&#xff1a; python缩短大量数据处理时间-进程池pool()和map() 一 定义与解释 1、对于python代码&#xff0c;多线程其实是个假的&#xff0c;因为每次计算的时候&#xff0c;实质上只有一个线程计算。使用多线程时&#xff0c;是几…

【天池题解】题解:CAAI-BDSC2023社交图谱链接预测(任务一:社交图谱小样本场景链接预测)

【天池题解】题解&#xff1a;CAAI-BDSC2023社交图谱链接预测&#xff08;任务一&#xff1a;社交图谱小样本场景链接预测&#xff09; 文章目录 【天池题解】题解&#xff1a;CAAI-BDSC2023社交图谱链接预测&#xff08;任务一&#xff1a;社交图谱小样本场景链接预测&#xf…

中介者模式的学习与使用

1、中介者模式的学习 中介者模式是一种行为型设计模式&#xff0c;它通过引入一个中介者对象来解耦一组对象之间的交互。中介者模式促进了对象之间的松耦合&#xff0c;使得它们可以独立地进行通信&#xff0c;而不需要直接相互引用。   在中介者模式中&#xff0c;有以下几个…

获取文件大小并转换单位

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

【工具使用】Notepad++如何使用正则表达式同时搜索多个字符串

一&#xff0c;简介 在调试代码定位问题的时候&#xff0c;由于log打印比较多&#xff0c;故需要使用NotePad文本编辑器进行搜索&#xff0c;并且需要同时搜索多个字符串&#xff0c;本文介绍如何同时搜索多个字符串&#xff0c;供参考。 二&#xff0c;操作步骤 2.1 搜索设…

90、基于STM32单片机数字频率计频率检测配NE555脉冲发生器设计(程序+原理图+PCB源文件+参考论文+硬件设计资料+元器件清单等)

单片机主芯片选择方案 方案一&#xff1a;AT89C51是美国ATMEL公司生产的低电压&#xff0c;高性能CMOS型8位单片机&#xff0c;器件采用ATMEL公司的高密度、非易失性存储技术生产&#xff0c;兼容标准MCS-51指令系统&#xff0c;片内置通用8位中央处理器(CPU)和Flash存储单元&a…