Description Usage Arguments Value See Also Examples
Retrieve the shortest path between two nodes.
1 2 | shortestPath(fromNode, relType, toNode, direction = "out", max_depth = 1,
cost_property = character())
|
fromNode |
A node object. |
relType |
A character string. The relationship type to traverse. |
toNode |
A node object. |
direction |
A character string. The relationship direction to traverse; this can be either "in", "out", or "all". |
max_depth |
An integer. The maximum depth of the path. |
cost_property |
A character string. If retrieving a weighted shortest path, the name of the relationship property that contains the weights. |
A path object.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | ## Not run:
graph = startGraph("http://localhost:7474/db/data/")
clear(graph)
alice = createNode(graph, "Person", name = "Alice")
bob = createNode(graph, "Person", name = "Bob")
charles = createNode(graph, "Person", name = "Charles")
david = createNode(graph, "Person", name = "David")
elaine = createNode(graph, "Person", name = "Elaine")
r1 = createRel(alice, "KNOWS", bob, weight=1.5)
r2 = createRel(bob, "KNOWS", charles, weight=2)
r3 = createRel(bob, "KNOWS", david, weight=4)
r4 = createRel(charles, "KNOWS", david, weight=1)
r5 = createRel(alice, "KNOWS", elaine, weight=2)
r6 = createRel(elaine, "KNOWS", david, weight=2.5)
# The default max_depth of 1 will not find a path.
# There are no length-1 paths between alice and david.
p = shortestPath(alice, "KNOWS", david)
is.null(p)
# Set the max_depth to 4.
p = shortestPath(alice, "KNOWS", david, max_depth = 4)
p$length
n = nodes(p)
sapply(n, function(x) x$name)
# Setting the direction to "in" and traversing from alice to david will not find a path.
p = shortestPath(alice, "KNOWS", david, direction = "in", max_depth = 4)
is.null(p)
# Setting the direction to "in" and traversing from david to alice will find a path.
p = shortestPath(david, "KNOWS", alice, direction = "in", max_depth = 4)
p$length
n = nodes(p)
sapply(n, function(x) x$name)
# Find the weighted shortest path between Alice and David.
p = shortestPath(alice, "KNOWS", david, cost_property="weight")
p$length
p$weight
nodes(p)
## End(Not run)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.