igraph (version 0.5.5-4)

Graphs from adjacency lists: Create graphs from adjacency lists

Description

An adjacency list is a list of numeric vectors, containing the neighbor vertices for each vertex. This function creates an igraph graph object from such a list.

Usage

graph.adjlist(adjlist, directed = TRUE, duplicate = TRUE)

Arguments

adjlist
The adjacency list. It should be consistent, i.e. the maximum throughout all vectors in the list must be less than the number of vectors (=the number of vertices in the graph). Note that the list is expected to be 0-indexed.
directed
Logical scalar, whether or not to create a directed graph.
duplicate
Logical scalar. For undirected graphs it gives whether edges are included in the list twice. E.g. if it is TRUE then for an undirected {A,B} edge graph.adjlist expects A included in the neigh

Value

  • An igraph graph object.

Details

Adjacency lists are handy if you intend to do many (small) modifications to a graph. In this case adjacency lists are more efficient than igraph graphs.

The idea is that you convert your graph to an adjacency list by get.adjlist, do your modifications to the graphs and finally create again an igraph graph by calling graph.adjlist.

See Also

get.edgelist

Examples

Run this code
## Directed
g <- graph.ring(10, dir=TRUE)
al <- get.adjlist(g, mode="out")
g2 <- graph.adjlist(al)
graph.isomorphic(g, g2)

## Undirected
g <- graph.ring(10)
al <- get.adjlist(g)
g2 <- graph.adjlist(al, dir=FALSE)
graph.isomorphic(g, g2)
ecount(g2)
g3 <- graph.adjlist(al, dir=FALSE, duplicate=FALSE)
ecount(g3)
is.multiple(g3)

Run the code above in your browser using DataCamp Workspace