d3.js强制布局 - 按属性

时间:2015-05-25 14:09:43

标签: d3.js

我一直在努力解决这个问题很长一段时间,进展甚微。我打算把我的代码放在这里,但它变得很长而且很复杂,我仍然不确定我是否采取了正确的方法,所以我想要备份,显示数据并说我想要完成的将是采取的方法。

基本上我的目标是创建一个d3力布局。所有数据都将被硬编码'进入页面。我已经对节点进行了一些网络分析,并将这些指标包含在数据集中(特征向量,投资等)我希望能够创建网络可见性,并且我可以使用滑块来过滤网络。各种指标。换句话说,我有一个范围滑块,设置为网络的“度”度量的最小值和最大值(作为示例),当我调整滑块值时,网络过滤掉那些超出这些值的节点。我希望能够过滤掉这些节点。

我已经看过许多过滤的例子,大多数都关注减少网络而不谈恢复节点。我的尝试导致没有发生任何事情,或者正在创建现有节点的多个副本,或者任何数量的行为,但不是我之后的行为。有很多方法可以让猫皮肤变白。在d3中,我一直沿着不允许我(或者我只是无法理解)的路径来控制过滤我想要的方式。

我不想只控制可见性,我希望完全删除和恢复节点,并让网络顺利重新调整。

以下是我正在使用的数据示例...

var dataset = {
  “directed”: false, 
  “graph”: [], 
  “nodes”: [
    {
    “category”: “new”, 
    “eigen”: 0.05923, 
    “between”: 0.0, 
    “close”: 0.25265, 
    “deg”: 1, 
    “id”: “Name1”, 
    “uid”: 100006190145565
    }, 
    {
    “category”: “known”, 
    “eigen”: 0.00411, 
    “between”: 0.002002792177543483, 
    “close”: 0.19151, 
    “deg”: 3, 
    “id”: “Name2”, 
    “uid”: 100002598631097
    }, 
    {
    “category”: “new”, 
    “eigen”: 0.0, 
    “between”: 0.0, 
    “close”: 0.06203, 
    “deg”: 1, 
    “id”: “Name3”, 
    “uid”: 727631862
    }, 
    {
    “category”: “new”, 
    “eigen”: 0.00725, 
    “between”: 0.0, 
    “close”: 0.21037, 
    “deg”: 1, 
    “id”: “Name4”, 
    “uid”: 100008585823128
    }, 
], 
“links”: [
    {
    “source”: 0, 
    “target”: 1
    }, 
    {
    “source”: 0, 
    “target”: 1
    }, 
    {
    “source”: 0, 
    “target”: 3
    }
], 
“multigraph”: false
};

我也可以提供我的一些代码,但我认为这会让讨论变得混乱,因为我尝试了多种方法,其中没有一种方法效果很好,当我获得部分结果时,每一种方法似乎都让我更加困惑。我们非常感谢您提供的任何帮助。

0 个答案:

没有答案