如何解决react-graph-vis 更新整个节点的颜色非常慢
我正在使用这个 react-graph-vis(this link) 库来可视化我的 a->b 依赖项。
除了点击节点之外,我想变灰,但如果我有超过 500 个样本节点,它会非常慢。
(实际上我的数据集包含 1,800 个节点)
你能帮我改进它的性能吗?
这是更新片段,
const events = {
select: function(event) {
var { nodes,edges } = event;
let connectednodes = [];
let connectedEdges = [];
if (nodes.length > 0) {
connectednodes = graph.network.getConnectednodes(nodes[0]);
connectedEdges = graph.network.getConnectedEdges(nodes[0]);
}
let newNodes = graph.nodes.map((el) => {
if (nodes.length <= 0 || nodes[0] === el.id || connectednodes.includes(el.id)) {
return { ...el,color: undefined };
} else {
return { ...el,color: '#EbedEF' };
}
});
let newEdges = graph.edges.map((el) => {
if (nodes.length <= 0 || nodes[0] === el.id || connectedEdges.includes(el.id)) {
return { ...el,hidden: false };
} else {
return { ...el,hidden: true };
}
});
const temp = { ...graph };
temp.nodes = newNodes;
temp.edges = newEdges;
setGraph(temp);
}
};
这是我的code sandbox link。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。