0

我创建了一个像这样的力导向图,它适用于类似 miserables.js 的 JSON 文件。可视化显示了相互引用的出版物之间的网络。

以下代码定义了源节点和目标节点的颜色:

var color = d3.scale.category10();...

.style("fill", function(d) { return color(d.group); })

那么,如何定义节点的颜色,它同时是源和目标?

4

1 回答 1

2

颜色是根据节点的组来设置的,节点组是从 JSON数据源加载的。因此,我认为您需要预处理数据以添加其他组。

例如,假设存在三种节点类型:source=1、target=2、both=3。D3 JSON 数据源指定节点和节点之间的链接。

例如:

{
    "nodes":[
        {"name":"source","type":"source","group":1},
        {"name":"target","type":"target","group":2},
        {"name":"source & target","type":"both","group":3}
    ],
    "links":[
        {"source":0,"target":1,"value":1},
        {"source":0,"target":2,"value":2},
        {"source":2,"target":1,"value":3}
    ]
}

一个运行的例子,是here。如果将鼠标悬停在节点上,您将看到显示每个节点类型的工具提示。

于 2012-08-06T22:25:21.120 回答