How to hide unwanted relationships between nodes i

2020-01-27 08:02发布

问题:

I'm new in Neo4j and I have a weird requirement.

I have some node

CREATE (a:node {title:1})
CREATE (b:node {title:2})
CREATE (c:node {title:3})
CREATE (d:node {title:4})

and multiple relationships between them:

CREATE (a)-[:RELATES{jump:[1]}]->(b)
CREATE (b)-[:RELATES{jump:[1]}]->(c)
CREATE (c)-[:RELATES{jump:[1]}]->(d)
CREATE (a)-[:RELATES{jump:[2]}]->(c)
CREATE (c)-[:RELATES{jump:[2]}]->(d)
CREATE (d)-[:RELATES{jump:[1]}]->(b)
CREATE (a)-[:RELATES{jump:[3]}]->(d)
CREATE (d)-[:RELATES{jump:[3]}]->(c)
CREATE (c)-[:RELATES{jump:[3]}]->(b)

The graph and the relationship are shown here:

I want to check the graph such that only those relationships should be visible which I'm interested in. Now when I do something like this: MATCH (a)-[r]->(b) WHERE 1 IN r.jump RETURN a,b

I get the something like:

Is there a way where I can hide(not delete) the not relevant relationships while displaying the graph? May be something like this(edited on Image tool):

PS: Let Grey be white.

回答1:

By default the Neo4j Browser uses an "Auto-Complete" feature to show all relationships that exist between nodes in the visualization. You can change this by toggling the "Auto-Complete" button in the Neo4j browser:

This will exclude any relationships not explicitly returned in the Cypher query from the visualization.

Note that you will need to explicitly return the relationships you are interested in. So your query becomes:

MATCH (a)-[r]->(b) 
WHERE 1 IN r.jump 
RETURN a,r,b


回答2:

In neo4j 3.2.1 this feature has been relocated to the bottom left corner, under the gear icon: "Connect result nodes" (checked by default, thus returning all relationships between nodes included in the result).



标签: neo4j cypher