博客
关于我
echart关系图平分节点删除时自动平衡问题
阅读量:396 次
发布时间:2019-03-05

本文共 619 字,大约阅读时间需要 2 分钟。

项目场景:

项目场景:Echarts关系图中(不是力图)一个节点x,y是固定的,为了同一列能居中显示,规定:当前列有奇数个元素新节点往下放,有偶数个节点时新节点往上放

问题描述:

删除中间节点会有空缺:

删除前后:

解决方案:

限制:

  1. 平衡后: 下边节点数>= 上边节点数,且下边比上边最多多一个
  2. 本列添加新节点后: 下边节点数>= 上边节点数,且下边比上边最多多一个

解决方法

  • 删除中心节
    • 下侧节点数 = 上侧节点
      删除掉之后总数为偶数,下一个节点往上放,中心节点上所有节点往下移。上侧比下侧多一个节点。
    • 上侧节点数 > 下侧节点
      删除掉之后总数为奇数,下一个节点往下放,中心节点下所有节点往上移。左右点相等。
  • 删除上侧节点
    • 下侧节点数 = 上侧节点
      删除掉之后总数为偶数,下一个节点往上放,删除节点上所有节点往下移。左侧比右侧多一个节点。
    • 上侧节点数 > 下侧节点
      删除掉之后总数为奇数,下一个节点往下放,中心节点下所有节点往上移。左右点相等。
  • 删除下侧节点
    • 下侧节点数 = 上侧节点
      删除掉之后总数为偶数,下一个节点往上放,删除节点上所有节点往下移。左侧比右侧多一个节点。
    • 上侧节点数 > 下侧节点
      删除掉之后总数为奇数,下一个节点往下放,中心节点下所有节点往上移。左右点相等。

可以看到节点移动跟删除节点的位置无关,淦!

  1. 当删除节点个数为偶数时,删除节点上部分向下移动
  2. 当节点个数为奇数数时,删除节点下部分向上移动

效果图

转载地址:http://jewkz.baihongyu.com/

你可能感兴趣的文章
Spring MVC+javamail实现邮件发送
查看>>
gRPC在 ASP.NET Core 中应用学习(一)
查看>>
@SuppressWarnings 用法
查看>>
看完你就明白的锁系列之锁的状态
查看>>
看完这篇操作系统,和面试官扯皮就没问题了
查看>>
我的价值观
查看>>
真香!Linux 原来是这么管理内存的
查看>>
一文详解 Java 并发模型
查看>>
阅站无数!不过我只推荐下面这些
查看>>
值类型与引用类型(中)
查看>>
MSSQL 2005 数据库变成可疑状态
查看>>
QBlog V2.5 源码开放下载(ASP.NET 番外系列之开端)
查看>>
秋色园引发CPU百分百命案的事件分析与总结
查看>>
安装jdk并配置环境变量
查看>>
稀疏数组
查看>>
js的严格模式
查看>>
idea的安装和无限期试用
查看>>
Oracle VM VirtualBox安装PVE虚拟机
查看>>
【转】如何用css限制文字长度,使溢出的内容用省略号…显示
查看>>
Android MediaPlayer setDataSource failed
查看>>