我正在使用这样的数据:
x y z
x 1.0 0.4 0.25
y 0.2 1.0 -0.44
z -0.3 -0.3 1.00
[('x', 'x', 1.0),
('x', 'y', 0.4),
('x', 'z', 0.25),
('y', 'x', 0.2),
('y', 'y', 1.0),
('y', 'z', -0.44),
('z', 'x', -0.3),
('z', 'y', -0.3),
('z', 'z', 1.0)]
我有一个javascript代码,可以对标签名称进行分组,列出所有唯一值并删除重复项,然后给我以下信息:
[{key:"1", tags:[{name:"user1"}, {name:"bot2"}]},
{key:"2", tags:[{name:"user3"}, {name:"bot4"}]},
{key:"3", tags:[{name:"user5"}, {name:"user1"}]}]
我想用D3库替换它。
我正在寻找文档,但是不同版本的参考文献使我很困惑。
答案 0 :(得分:0)
您不需要d3.js来处理数据。您可以使用普通的javascript。 这是一种实现方法:
const intialData = [{key:"1", tags:[{name:"user1"}, {name:"bot2"}]},
{key:"2", tags:[{name:"user3"}, {name:"bot4"}]},
{key:"3", tags:[{name:"user5"}, {name:"bot1"}]}];
const d1 = intialData.map((ele) => ele.tags);
log("d1", d1);
let d2 = [];
d1.forEach((ele) => {
ele.forEach((ele) => { d2.push(ele.name);});
});
log("d2", d2);
const d3 = new Set(d2);
log("d3", d3);;
const d4 = Array.from(d3);
log("d4", d4);
function log(str, obj) { console.log(str+ ":"); console.log(obj);}