library(magrittr)
# Create a node data frame (ndf)
nodes <-
create_nodes(
nodes = c("a", "b", "c", "d"),
type = c("A", "A", "Z", "Z"),
label = TRUE,
value = c(3.5, 2.6, 9.4, 2.7))
# Create an edge data frame (edf)
edges <-
create_edges(
from = c("a", "b", "c"),
to = c("d", "c", "a"),
rel = c("A", "Z", "A"))
# Create a graph with the ndf and edf
graph <-
create_graph(nodes_df = nodes,
edges_df = edges)
# Explicitly select nodes `a` and `c`
graph <-
graph %>%
select_nodes(
nodes = c("a", "c"))
# Verify that the node selection has been made
# using the `get_selection()` function
get_selection(graph)
#> $nodes
#> [1] "a" "c"
# Select nodes based on the node `type`
# being `Z`
graph <-
graph %>%
clear_selection %>%
select_nodes(
node_attr = "type",
search = "Z")
# Verify that an node selection has been made, and
# recall that the `c` and `d` nodes are of the
# `Z` type
get_selection(graph)
#> $nodes
#> [1] "c" "d"
# Select edges based on the node value attribute
# being greater than 3.0 (first clearing the current
# selection of nodes)
graph <-
graph %>%
clear_selection %>%
select_nodes(
node_attr = "value",
search = ">3.0")
# Verify that the correct node selection has been
# made; in this case, nodes `a` and `c` have values
# for `value` greater than 3.0
get_selection(graph)
#> $nodes
#> [1] "a" "c"
Run the code above in your browser using DataLab