问题标签 [webcola]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
306 浏览

d3.js - D3.js - 有向无环图:如何重新排列节点和边以避免边相交

我必须创建具有互连的节点和边。我也在使用d3js。现在的问题是图表看起来非常混乱。我尝试使用二次贝塞尔曲线来绘制节点之间的边缘。我希望如果按下一个按钮,它应该重新排列成简化视图。 我的图表

我碰巧看了一下metacademy,它们是一个开源项目。它具有我正在寻找的确切功能。https://metacademy.org/graphs/edit/new,您需要登录。但是无法找到执行相同操作的代码部分。

最初创建的图表

最初的

按下刷新按钮后

刷新后

我对 d3js 很陌生,所以我会感谢任何帮助/建议。

0 投票
0 回答
87 浏览

animation - 使用 webcola js 在 D3 中禁用初始动画

我想禁用第一个动画,因为它会在大图中显示浏览器。文档很吓人,我也不用什么d3强制布局,我要保留webcola。

谢谢

0 投票
0 回答
102 浏览

javascript - 如何在 cola.js 中修复其侧父组持有者的节点?

所以 Cola.JS很漂亮,但我想知道如何让一个节点(例如通过某些属性)粘在其父组持有者的右侧?

像这里的节点 26 27 28 (我想要的图片): 在此处输入图像描述

0 投票
1 回答
104 浏览

d3.js - 如何在d3js中获得链接边缘和节点的交集?

我想要很多节点形状(圆形,方形......)这是我的JSfiddle 原型问题是箭头放置: 在此处输入图像描述

它们在 js 中是这样创建的:

和CSS:

箭头应该是我画绿色标记的地方,但它们在中心(红色标记)。它们的方向正确,但放错了位置。如何使箭头位于d3js中的链接边缘和节点的交点上?

0 投票
1 回答
277 浏览

javascript - 使用 cola.js 和 Cytoscape 的 Y 轴力

我注意到使用 Cola.js(与 Cytoscape.js)时,我的大多数布局倾向于形成方形布局,而不是用完我的边界框,它比高更宽。

我一直在环顾四周,发现d3-force哪个具有forceY转换方形布局的选项(https://bl.ocks.org/steveharoz/8c3e2524079a8c440df60c1ab72b5d03):

在此处输入图像描述

对于这个更广泛的布局:

在此处输入图像描述

我真的很想对 Cola.js 做同样的事情,但是我一直在努力做到这一点,并尝试了所有可能的选项,比如设置边界框、禁用缩放等。这可能吗?

我找到了一个 Cola.js 的演示,它提供了一些我需要的东西,但无法在 Cytoscape.js 中工作:https ://ialab.it.monash.edu/webcola/examples/pageBoundsConstraints.html

0 投票
1 回答
540 浏览

layout - Cytoscape Cola Layout:如何在不改变位置的情况下重新开始布局?

我正在尝试使用 Cytoscape 可乐布局来渲染一个图形,该图形应该在使用它时应用强制定向布局(因此当拖动节点时,它们应该表现得好像涉及到一些重力)。相关库:

我的第一个问题是通过将节点添加到图形add(node)中不会将它们包含在可乐布局算法中。我发现的唯一方法是破坏布局,重新初始化它并重新启动它。但这会导致节点在某些情况下跳跃。

我认为这是因为我完全破坏了旧布局,但是在设置一个最小示例时,我意识到即使只是调用layout.stop()layout.run()导致节点被重新定位。

在以下示例中,只有一个节点。通过拖放移动节点,然后按“停止”按钮,然后按“开始”按钮会使节点跳回其初始位置:

这是一个错误还是我做错了什么?有谁知道如何在不改变节点位置的情况下停止和重新启动布局?

非常感谢,杰西

0 投票
0 回答
22 浏览

graph - CYTOSCAPE COLA:锁定启用动画的节点

我正在使用 cytoscape-cola 库使用infinite:truecy 元素的布局部分中的参数为我的图形设置动画。我还在我的图表中添加了一个在单击时锁定节点位置的函数(例如在 Neo4j 中发生的情况)。这是我的功能:

问题是,当函数被触发时,我从 cola.min.js 收到这个错误: Uncaught TypeError: i.locked is not a function。如果我禁用动画(infinite:false),该功能有效,那么我认为锁定节点与 cytoscape-cola.js 的动画功能冲突。有人可以帮我吗?