transform_to_subgraph_ws: Create a subgraph using a node or edge selection

View source: R/transform_to_subgraph_ws.R

transform_to_subgraph_wsR Documentation

Create a subgraph using a node or edge selection

Description

Create a subgraph based on a selection of nodes or edges stored in the graph object.

This function makes use of an active selection of nodes or edges (and the function ending with ⁠_ws⁠ hints at this).

Selections of nodes can be performed using the following node selection (⁠select_*()⁠) functions: select_nodes(), select_last_nodes_created(), select_nodes_by_degree(), select_nodes_by_id(), or select_nodes_in_neighborhood().

Selections of edges can be performed using the following edge selection (⁠select_*()⁠) functions: select_edges(), select_last_edges_created(), select_edges_by_edge_id(), or select_edges_by_node_id().

Selections of nodes or edges can also be performed using the following traversal (⁠trav_*()⁠) functions: trav_out(), trav_in(), trav_both(), trav_out_node(), trav_in_node(), trav_out_until(), trav_in_until(), trav_out_edge(), trav_in_edge(), trav_both_edge(), or trav_reverse_edge().

Usage

transform_to_subgraph_ws(graph)

Arguments

graph

A graph object of class dgr_graph.

Value

A graph object of class dgr_graph.

Examples

# Create a node data frame (ndf)
ndf <-
  create_node_df(
    n = 6,
    value =
      c(3.5, 2.6, 9.4,
        2.7, 5.2, 2.1))

# Create an edge data frame (edf)
edf <-
  create_edge_df(
    from = c(1, 2, 4, 5, 2, 6, 2),
      to = c(2, 4, 1, 3, 5, 5, 4))

# Create a graph
graph <-
  create_graph(
    nodes_df = ndf,
    edges_df = edf)

# Create a selection of nodes, this selects
# nodes `1`, `3`, and `5`
graph <-
  graph %>%
  select_nodes(
    conditions = value > 3)

# Create a subgraph based on the selection
subgraph <-
  graph %>%
  transform_to_subgraph_ws()

# Display the graph's node data frame
subgraph %>% get_node_df()

# Display the graph's edge data frame
subgraph %>% get_edge_df()

# Create a selection of edges, this selects
# edges `1`, `2`
graph <-
  graph %>%
  clear_selection() %>%
  select_edges(
  edges = c(1,2))

# Create a subgraph based on the selection
subgraph <-
  graph %>%
  transform_to_subgraph_ws()

# Display the graph's node data frame
subgraph %>% get_node_df()

# Display the graph's edge data frame
subgraph %>% get_edge_df()


rich-iannone/DiagrammeR documentation built on Feb. 5, 2024, 8 a.m.