Skip to contents

From a graph object of class dgr_graph, set edge attribute values for one or more edges.

Usage

set_edge_attrs(graph, edge_attr, values, from = NULL, to = NULL)

Arguments

graph

A graph object of class dgr_graph.

edge_attr

The name of the attribute to set. Some examples are located in edge_aes()

values

The values to be set for the chosen attribute for the chosen edges.

from

An optional vector of node IDs from which the edge is outgoing for filtering list of nodes with outgoing edges in the graph.

to

An optional vector of node IDs from which the edge is incoming for filtering list of nodes with incoming edges in the graph.

Value

A graph object of class dgr_graph.

Examples

# Create a simple graph
ndf <-
  create_node_df(
    n = 4,
    type = "basic",
    label = TRUE,
    value = c(3.5, 2.6, 9.4, 2.7))

edf <-
  create_edge_df(
    from = c(1, 2, 3),
    to = c(4, 3, 1),
    rel = "leading_to")

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

# Set attribute `color = "green"`
# for edges `1`->`4` and `3`->`1`
# in the graph
graph <-
  graph %>%
  set_edge_attrs(
    edge_attr = color,
    values = "green",
    from = c(1, 3),
    to = c(4, 1))

# Set attribute `color = "blue"`
# for all edges in the graph
graph <-
  graph %>%
  set_edge_attrs(
    edge_attr = color,
    values = "blue")

# Set attribute `color = "pink"`
# for all edges in graph outbound
# from node with ID value `1`
graph <-
  graph %>%
  set_edge_attrs(
    edge_attr = color,
    values = "pink",
    from = 1)

# Set attribute `color = "black"`
# for all edges in graph inbound
# to node with ID `1`
graph <-
  graph %>%
  set_edge_attrs(
    edge_attr = color,
    values = "black",
    to = 1)