Skip to contents

graph_from_edgelist() creates a graph from an edge list. Its argument is a two-column matrix, each row defines one edge. If it is a numeric matrix then its elements are interpreted as vertex IDs. If it is a character matrix then it is interpreted as symbolic vertex names and a vertex ID will be assigned to each name, and also a name vertex attribute will be added.

Usage

graph_from_edgelist(el, directed = TRUE)

from_edgelist(...)

Arguments

el

The edge list, a two column matrix, character or numeric.

directed

Whether to create a directed graph.

...

Passed to graph_from_edgelist().

Value

An igraph graph.

create(), empty(), vcount(), famous(), simplify(), is_simple()

Examples

el <- matrix(c("foo", "bar", "bar", "foobar"), nc = 2, byrow = TRUE)
graph_from_edgelist(el)
#> ── <igraph> ───────────────────────────────────────────────────────── d6164ce ──
#>  directed · named
#>  3 vertices · 2 edges
#> 
#> ── Attributes ──────────────────────────────────────────────────────────────────
#> → vertex: name <chr>
#> 
#> ── Edges (vertex names) ────────────────────────────────────────────────────────
#> [1] foo → bar     bar → foobar 

# Create a ring by hand
graph_from_edgelist(cbind(1:10, c(2:10, 1)))
#> ── <igraph> ───────────────────────────────────────────────────────── ab35520 ──
#>  directed
#>  10 vertices · 10 edges
#> 
#> ── Edges ───────────────────────────────────────────────────────────────────────
#>  [1] 1 → 2   2 → 3   3 → 4   4 → 5   5 → 6   6 → 7   7 → 8   8 → 9   9 → 10 
#> [10] 10 → 1