我在 Neo4j 中有一个带有加权边缘的图。我用 neovis.js 库对其进行了可视化,如图所示。目前,所有边缘都具有相同的颜色。在下一步中,我需要为边分配颜色,以便根据边的预定义属性(该属性是为边而不是顶点定义的),边的每个组(集群或社区)都具有不同的颜色。
我的图节点和关系存储如下:
节点:顶点(索引,名称),例如:(42,“顶点23”)
关系:EDGE(索引、计数、组),例如:(12, 42, 0), (24, 230, 1)
(:顶点)-[:边]->(:顶点)
这是我创建图表的代码:
<html>
<script src="https://rawgit.com/neo4j-contrib/neovis.js/master/dist/neovis.js"></script>
<script>
function draw() {
var config = {
container_id: "viz",
server_url: "bolt://localhost:7687",
server_user: "***",
server_password: "***",
labels: {
"Vertex": {
caption: "name"
}
},
relationships: {
"EDGE": {
caption: false,
thickness: "count"
}
},
initial_cypher: "MATCH p=()-[:RELATIONSHIP]->() RETURN p"
}
var viz = new NeoVis.default(config);
viz.render();
}
</script>
<body onload="draw()">
<div id="viz"></div>
</body>
</html>
如果我也可以将特定颜色映射到每个组,那就太好了。假设 group 是一个二进制属性,所以我想要这样的东西:
...
relationships: {
"EDGE": {
caption: false,
thickness: "count"
color: "group" {0: red, 1: green}
}
},
...
