我在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}
}
},
...