+.igraph {igraph}R Documentation

Add vertices, edges or another graph to a graph


Add vertices, edges or another graph to a graph


## S3 method for class 'igraph'
e1 + e2



First argument, probably an igraph graph, but see details below.


Second argument, see details below.


The plus operator can be used to add vertices or edges to graph. The actual operation that is performed depends on the type of the right hand side argument.

It is important to note that, although the plus operator is commutative, i.e. is possible to write

  graph <- "foo" + make_empty_graph()

it is not associative, e.g.

  graph <- "foo" + "bar" + make_empty_graph()

results a syntax error, unless parentheses are used:

  graph <- "foo" + ( "bar" + make_empty_graph() )

For clarity, we suggest to always put the graph object on the left hand side of the operator:

  graph <- make_empty_graph() + "foo" + "bar"

See Also

Other functions for manipulating graph structure: add_edges(), add_vertices(), delete_edges(), delete_vertices(), edge(), igraph-minus, path(), vertex()


# 10 vertices named a,b,c,... and no edges
g <- make_empty_graph() + vertices(letters[1:10])

# Add edges to make it a ring
g <- g + path(letters[1:10], letters[1], color = "grey")

# Add some extra random edges
g <- g + edges(sample(V(g), 10, replace = TRUE), color = "red")
g$layout <- layout_in_circle

[Package igraph version 1.3.5 Index]