add_n_node_clones: Add one or several clones of an existing node to the graph

Description Usage Arguments Value See Also Examples

View source: R/add_n_node_clones.R

Description

Add n new nodes to a graph object of class dgr_graph which are clones of a node already in the graph. All node attributes are preserved except for the node label attribute (to maintain the uniqueness of non-NA node label values). A vector of node label can be provided to bind new labels to the cloned nodes.

Usage

1
add_n_node_clones(graph, n, node, label = NULL)

Arguments

graph

A graph object of class dgr_graph.

n

The number of node clones to add to the graph.

node

A node ID corresponding to the graph node to be cloned.

label

An optional vector of node label values. The vector length should correspond to the value set for n.

Value

A graph object of class dgr_graph.

See Also

Other Node creation and removal: add_n_nodes_ws(), add_n_nodes(), add_node_clones_ws(), add_node_df(), add_nodes_from_df_cols(), add_nodes_from_table(), add_node(), colorize_node_attrs(), copy_node_attrs(), create_node_df(), delete_nodes_ws(), delete_node(), drop_node_attrs(), join_node_attrs(), layout_nodes_w_string(), mutate_node_attrs_ws(), mutate_node_attrs(), node_data(), recode_node_attrs(), rename_node_attrs(), rescale_node_attrs(), set_node_attr_to_display(), set_node_attr_w_fcn(), set_node_attrs_ws(), set_node_attrs(), set_node_position()

Examples

 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
# Create a graph with a path of
# nodes; supply `label`, `type`,
# and `value` node attributes
graph <-
  create_graph() %>%
  add_path(
    n = 3,
    label = c("d", "g", "r"),
    type = c("a", "b", "c"))

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

# Create 3 clones of node `1`
# but assign new node label
# values (leaving `label` as
# NULL yields NA values)
graph <-
  graph %>%
  add_n_node_clones(
    n = 3,
    node = 1,
    label = c("x", "y", "z"))

# Display the graph's internal
# node data frame: nodes `4`,
# `5`, and `6` are clones of `1`
graph %>% get_node_df()

Example output

sh: 1: cannot create /dev/null: Permission denied
Error in file(con, "r") : cannot open the connection
In addition: Warning message:
In file(con, "r") : cannot open file '/etc/timezone': Permission denied
Warning: Your system is mis-configured: '/etc/localtime' is not a symlink
sh: 1: cannot create /dev/null: Permission denied
sh: 1: cannot create /dev/null: Permission denied
Error in file(con, "r") : cannot open the connection
In addition: Warning message:
In file(con, "r") : cannot open file '/etc/timezone': Permission denied
Warning: Your system is mis-configured: '/etc/localtime' is not a symlink
sh: 1: cannot create /dev/null: Permission denied
  id type label
1  1    a     d
2  2    b     g
3  3    c     r
`select_nodes_by_id()` INFO: created a new selection of 3 nodes
Warning message:
Prefixing `UQ()` with the rlang namespace is deprecated as of rlang 0.3.0.
Please use the non-prefixed form or `!!` instead.

  # Bad:
  rlang::expr(mean(rlang::UQ(var) * 100))

  # Ok:
  rlang::expr(mean(UQ(var) * 100))

  # Good:
  rlang::expr(mean(!!var * 100))

This warning is displayed once per session. 
  id type label
1  1    a     d
2  2    b     g
3  3    c     r
4  4    a     x
5  5    a     y
6  6    a     z

DiagrammeR documentation built on July 2, 2020, 3:19 a.m.