antvis/G6

如何override forceLayout #4778

neolee6053 posted onGitHub

问题描述

G6的force layout是来至d3 的。所以它也有d3的问题,比如没关联的节点会飘到很远的地方。 根据网上的建议,可以加 .force('forceX', d3.forceX(0)) .force('forceY', d3.forceY(0)) 使得真个图更向中间点合拢。

https://jsfiddle.net/p09uLr2q/1/

我想把这个也加进G6 force layout 里,如何办到呢? 如果我用registerLayout, 太多的function 要一个一个抄过来。有什么好的办法吗?

重现链接

https://jsfiddle.net/p09uLr2q/1/

重现步骤

如上

预期行为

如上

平台

  • 操作系统: [ Windows]
  • 网页浏览器: [Firefox]
  • G6 版本: [4.8.15 ]

屏幕截图或视频(可选)

No response

补充说明(可选)

No response


可以给 G6 提 pr 呀,哈哈,布局的仓库在 https://github.com/antvis/layout/tree/master/src/layout/force

posted by Yanyan-Wang over 1 year ago

哈哈, 我用patch package暂时解决了 https://www.npmjs.com/package/patch-package

node_modules/@antv/layout/lib/layout/force/force.js simulation +.force('forceX', d3Force.forceX(0)) +.force('forceY', d3Force.forceY(0)) .force("center", d3Force.forceCenter(self.center[0], self.center[1])) .force("charge", nodeForce) .alpha(alpha)

posted by neolee6053 over 1 year ago

Fund this Issue

$0.00
Funded

Pull requests