经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » JS/JS库/框架 » JavaScript » 查看文章
echart关系图平分节点删除时自动平衡问题
来源:cnblogs  作者:啦啦嘿  时间:2021/2/18 15:32:39  对本文有异议

项目场景:

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

问题描述:

删除中间节点会有空缺:
删除前后:
删除前在这里插入图片描述

解决方案:

限制:

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

解决方法

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

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

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

效果图

在这里插入图片描述

原文链接:http://www.cnblogs.com/Li929704201/p/14396355.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号