【问题标题】:d3 force graph: sticky nodesd3力图:粘性节点
【发布时间】:2012-09-11 21:19:08
【问题描述】:

我想在 D3 中的强制导向图布局中添加一个行为,这样一旦被拖放,一个拖放的 svg 节点就会粘在它的位置,无论在图形。我已经阅读了一些有关此 API 的信息,但我无法找到一种方法来使该 API 正常工作。

我要解决的问题是允许用户“挑选”复杂的力图。

【问题讨论】:

    标签: javascript layout graph d3.js force-layout


    【解决方案1】:

    在鼠标按下时将节点的 fixed 属性设置为 true。

    node.on("mousedown", function(d) { d.fixed = true; });
    

    例如:http://bl.ocks.org/3750558

    【讨论】:

    • 完美,做到了。非常感谢!
    • 在这个例子中,一旦一个节点被点击和拖动,它就会一直保持高亮和粘性。是否可以再次点击以解除其“粘性”?
    • 当然,例如,您可以在 dblclick 上设置 d.fixed = false。
    • node.on('dblclick', function(d){ d.fixed = false; })
    • 尊敬的先生,您用这个例子解决了我的头痛问题 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-04-23
    • 1970-01-01
    • 1970-01-01
    • 2013-09-01
    • 2015-07-30
    • 2023-03-20
    • 1970-01-01
    相关资源
    最近更新 更多