igraph (version 0.7.1)

graph.disjoint.union: Disjoint union of graphs

Description

The union of two or more graphs are created. The graphs are assumed to have disjoint vertex sets.

Usage

graph.disjoint.union(...)

Arguments

...
Graph objects or lists of graph objects.

Value

  • A new graph object.

concept

Graph operators

Details

graph.disjoint.union creates a union of two or more disjoint graphs. Thus first the vertices in the second, third, etc. graphs are relabeled to have completely disjoint graphs. Then a simple union is created. This function can also be used via the %du% operator. graph.disjont.union handles graph, vertex and edge attributes. In particular, it merges vertex and edge attributes using the basic c() function. For graphs that lack some vertex/edge attribute, the corresponding values in the new graph are set to NA. Graph attributes are simply copied to the result. If this would result a name clash, then they are renamed by adding suffixes: _1, _2, etc.

Note that if both graphs have vertex names (ie. a name vertex attribute), then the concatenated vertex names might be non-unique in the result. A warning is given if this happens. An error is generated if some input graphs are directed and others are undirected.

Examples

Run this code
## A star and a ring
g1 <- graph.star(10, mode="undirected")
V(g1)$name <- letters[1:10]
g2 <- graph.ring(10)
V(g2)$name <- letters[11:20]
str(g1 %du% g2)

Run the code above in your browser using DataCamp Workspace