我正在使用 Zoomchart 库的 NetChart 类来形成 netchart。但我面临链接问题。并且无法找到任何解决方案。
以下是我想要实现的情况: -
假设我们有两个节点A和B。这里A是卖方,B是买方。
Seller A -> B
Buyer B -> A
我正在动态加载数据。当我们最初加载A时,我们将B作为A的买家。这形成了一个像A -> B这样的链接。但是,当B加载其相关数据时,它会获得A,因为它正在从它(A)购买数据。这形成了两个链接节点:-
{
"from": "A",
"to": "B"
}
{
"from": "B",
"to": "A"
}
它正在创建这样的图表:-
但它应该是一个单一的链接。以下是代码:-
this.chartObject = new NetChart({
container: document.getElementById('sellerBuyersLinkingChart'),
area: { height: null },
navigation:{
focusNodeExpansionRadius: 1,
initialNodes: ["n-1"],
mode:"focusnodes"
},
data: {
dataFunction: (nodeList, success, error) => {
$.ajax({
url:url+'?nodes='+nodeList.toString(),
success: (response, textStatus, jqXHR) => {
success(response, textStatus, jqXHR);
},
error: error
});
},
requestMaxUnits: 1
},
style: {
nodeStyleFunction: (node) => {
},
linkStyleFunction: (link) => {
let type = link.data['extra']['type'];
if(type == 'sellers') {
link['fromDecoration'] = "arrow";
link['fillColor'] = "rgba(47,195,47,0.8)";
link['direction'] = "L";
} else {
link['toDecoration'] = "arrow";
link['fillColor'] = "rgba(236,46,46,0.8)";
link['direction'] = "R";
}
},
nodeFocused: {
fillColor: 'rgba(232,189,43,1)'
}
}
});
期望:有什么方法可以发送到带有 URL 的链接 ID。这样,我可以从链接中删除相同的节点。
该图表应创建如下节点:-