我一直在努力解决这个问题很长一段时间,进展甚微。我打算把我的代码放在这里,但它变得很长而且很复杂,我仍然不确定我是否采取了正确的方法,所以我想要备份,显示数据并说我想要完成的将是采取的方法。
基本上我的目标是创建一个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
};
我也可以提供我的一些代码,但我认为这会让讨论变得混乱,因为我尝试了多种方法,其中没有一种方法效果很好,当我获得部分结果时,每一种方法似乎都让我更加困惑。我们非常感谢您提供的任何帮助。