问题标签 [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.
d3.js - D3.js - 有向无环图:如何重新排列节点和边以避免边相交
我必须创建具有互连的节点和边。我也在使用d3
js。现在的问题是图表看起来非常混乱。我尝试使用二次贝塞尔曲线来绘制节点之间的边缘。我希望如果按下一个按钮,它应该重新排列成简化视图。
我碰巧看了一下metacademy,它们是一个开源项目。它具有我正在寻找的确切功能。https://metacademy.org/graphs/edit/new,您需要登录。但是无法找到执行相同操作的代码部分。
最初创建的图表
按下刷新按钮后
我对 d3js 很陌生,所以我会感谢任何帮助/建议。
animation - 使用 webcola js 在 D3 中禁用初始动画
我想禁用第一个动画,因为它会在大图中显示浏览器。文档很吓人,我也不用什么d3强制布局,我要保留webcola。
谢谢
javascript - 如何在 cola.js 中修复其侧父组持有者的节点?
所以 Cola.JS很漂亮,但我想知道如何让一个节点(例如通过某些属性)粘在其父组持有者的右侧?
d3.js - 如何在d3js中获得链接边缘和节点的交集?
我想要很多节点形状(圆形,方形......)这是我的JSfiddle 原型问题是箭头放置:
它们在 js 中是这样创建的:
和CSS:
箭头应该是我画绿色标记的地方,但它们在中心(红色标记)。它们的方向正确,但放错了位置。如何使箭头位于d3js中的链接边缘和节点的交点上?
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
layout - Cytoscape Cola Layout:如何在不改变位置的情况下重新开始布局?
我正在尝试使用 Cytoscape 可乐布局来渲染一个图形,该图形应该在使用它时应用强制定向布局(因此当拖动节点时,它们应该表现得好像涉及到一些重力)。相关库:
- https://github.com/cytoscape/cytoscape.js
- https://github.com/tgdwyer/WebCola
- https://github.com/cytoscape/cytoscape.js-cola
我的第一个问题是通过将节点添加到图形add(node)
中不会将它们包含在可乐布局算法中。我发现的唯一方法是破坏布局,重新初始化它并重新启动它。但这会导致节点在某些情况下跳跃。
我认为这是因为我完全破坏了旧布局,但是在设置一个最小示例时,我意识到即使只是调用layout.stop()
并layout.run()
导致节点被重新定位。
在以下示例中,只有一个节点。通过拖放移动节点,然后按“停止”按钮,然后按“开始”按钮会使节点跳回其初始位置:
这是一个错误还是我做错了什么?有谁知道如何在不改变节点位置的情况下停止和重新启动布局?
非常感谢,杰西
graph - CYTOSCAPE COLA:锁定启用动画的节点
我正在使用 cytoscape-cola 库使用infinite:true
cy 元素的布局部分中的参数为我的图形设置动画。我还在我的图表中添加了一个在单击时锁定节点位置的函数(例如在 Neo4j 中发生的情况)。这是我的功能:
问题是,当函数被触发时,我从 cola.min.js 收到这个错误: Uncaught TypeError: i.locked is not a function。如果我禁用动画(infinite:false
),该功能有效,那么我认为锁定节点与 cytoscape-cola.js 的动画功能冲突。有人可以帮我吗?