DiagrammeR (version 0.9.2)

copy_node_attrs: Copy a node attribute column and set the name

Description

Within a graph's internal node data frame (ndf), copy the contents an existing node attribute and create a distinct node attribute within the ndf with a different attribute name.

Usage

copy_node_attrs(graph, node_attr_from, node_attr_to)

Arguments

graph

a graph object of class dgr_graph.

node_attr_from

the name of the node attribute column from which values will be copied.

node_attr_to

the name of the new node attribute column to which the copied values will be placed.

Value

a graph object of class dgr_graph.

Examples

Run this code
# NOT RUN {
# Create a random graph
graph <-
  create_random_graph(
    n = 5, m = 10,
    set_seed = 23) %>%
  set_node_attrs(
    node_attr = shape,
    values = "circle")

# Get the graph's internal ndf to show which
# node attributes are available
get_node_df(graph)
#>   id type label value  shape
#> 1  1 <NA>     1   6.0 circle
#> 2  2 <NA>     2   2.5 circle
#> 3  3 <NA>     3   3.5 circle
#> 4  4 <NA>     4   7.5 circle
#> 5  5 <NA>     5   8.5 circle

# Make a copy the `value` node attribute as
# the `width` node attribute
graph <-
  graph %>%
  copy_node_attrs(
    node_attr_from = value,
    node_attr_to = size)

# Get the graph's internal ndf to show that the
# node attribute had been copied
get_node_df(graph)
#>   id type label value  shape size
#> 1  1 <NA>     1   6.0 circle  6.0
#> 2  2 <NA>     2   2.5 circle  2.5
#> 3  3 <NA>     3   3.5 circle  3.5
#> 4  4 <NA>     4   7.5 circle  7.5
#> 5  5 <NA>     5   8.5 circle  8.5
# }

Run the code above in your browser using DataLab