gpt4 book ai didi

javascript - 如何将所有数据添加到我的数组中以与色标一起使用?

转载 作者:行者123 更新时间:2023-12-03 10:44:24 24 4
gpt4 key购买 nike

我有一个力定向图。我使用的 JSON 数据如下所示:

var network = {
network: {
data: {
edges: [
{
directed: true,
id: "B_FRED_BEN",
"source": "FRED",
"target": "BEN",
"classif": "A",
"label": "A"
}],
nodes: [
{
"id": "FRED",
"classif": "B",
"createdOn": "2013-09-09",
"label": "2",
}]}}}

要链接我的节点,我使用这个:

nodesData = network.network.data.nodes;
edgesData = network.network.data.edges;
edges = [];
edgesData.forEach(function(e) {
var sourceNode = nodesData.filter(function(n) { return n.id === e.source;})[0];
var targetNode = nodesData.filter(function(n) { return n.id === e.target; })[0];

edges.push({source: sourceNode, target: targetNode});//, value: e.Value});
});

这仅将源和目标放入数组中。我想根据链接的数据来为链接着色:

links.style("stroke", function(d) { clog(d.label) });

我无法执行此操作,因为我使用上面填充的 edges 数组作为链接数据,并且其中仅包含源数据和目标数据,而不包含标签 我需要的数据。

如何将其余数据添加到 Edges 数组中?

我已经尝试过这个:

nodesData = network.network.data.nodes;
edgesData = network.network.data.edges;

edges = [];
edgesData.forEach(function(e) {
var directed = e.directed,
id = e.id,
sourceNode = nodesData.filter(function(n) { return n.id === e.source;})[0],
targetNode = nodesData.filter(function(n) { return n.id === e.target; })[0],
classif = e.classif,
label = e.label;

edges.push({directed: directed, id: id, source: sourceNode, target: targetNode, classif: classif, label: label});//, value: e.Value});
});

这不起作用:/

我想要的是根据数据中的标签为链接(边缘)着色

最佳答案

我猜是 coreId: coreId 造成了问题,您尚未在任何地方定义 coreId 。将其删除并尝试。

关于javascript - 如何将所有数据添加到我的数组中以与色标一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28626550/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com