copy_node_attrs {DiagrammeR} | R Documentation

## 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

    # 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

[Package DiagrammeR version 0.9.2 Index]