Obtain a list of all possible paths from a given node within a directed graph.
get_paths(
graph,
from = NULL,
to = NULL,
shortest_path = FALSE,
longest_path = FALSE,
distance = NULL
)
A graph object of class dgr_graph
.
The node from which all paths will be determined.
The node to which all paths will be determined.
An option to return paths that are the shortest in the set of all determined paths.
An option to return paths that are the longest in the set of all determined paths.
A vector of integer values that specify which of the valid paths to return when filtering by distance.
A list of paths, sorted by ascending traversal length, comprising vectors of node IDs in sequence of traversal through the graph.
# NOT RUN {
# Create a simple graph
graph <-
create_graph() %>%
add_n_nodes(n = 8) %>%
add_edge(from = 1, to = 2) %>%
add_edge(from = 1, to = 3) %>%
add_edge(from = 3, to = 4) %>%
add_edge(from = 3, to = 5) %>%
add_edge(from = 4, to = 6) %>%
add_edge(from = 2, to = 7) %>%
add_edge(from = 7, to = 5) %>%
add_edge(from = 4, to = 8)
# Get a list of all paths outward from node `1`
graph %>%
get_paths(from = 1)
# Get a list of all paths leading to node `6`
graph %>%
get_paths(to = 6)
# Get a list of all paths from `1` to `5`
graph %>%
get_paths(
from = 1,
to = 5)
# Get a list of all paths from `1` up to a distance
# of 2 node traversals
graph %>%
get_paths(
from = 1,
distance = 2)
# Get a list of the shortest paths from `1` to `5`
get_paths(
graph,
from = 1,
to = 5,
shortest_path = TRUE)
# Get a list of the longest paths from `1` to `5`
get_paths(
graph,
from = 1,
to = 5,
longest_path = TRUE)
# }
Run the code above in your browser using DataLab