addEdge: addEdge

Description Usage Arguments Details Value Author(s) See Also Examples

Description

A function to add an edge to a graph.

Usage

1
addEdge(from, to, graph, weights)

Arguments

from

The node the edge starts at

to

The node the edge goes to.

graph

The graph that the edge is being added to.

weights

A vector of weights, one for each edge.

Details

Both from and to can be vectors. They need not be the same length (if not the standard rules for replicating the shorter one are used). Edges are added to the graph between the supplied nodes.

The weights are given for each edge.

The implementation is a bit too oriented towards the graphNEL class and will likely change in the next release to accomodate more general graph classes.

If the graph is undirected then the edge is bidirectional (and only needs to be added once). For directed graphs the edge is directional.

Value

A new instance of a graph object with the same class as graph but with the indicated edges added.

Author(s)

R. Gentleman

See Also

addNode,removeEdge, removeNode

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
V <- LETTERS[1:4]
edL2 <- vector("list", length=4)
names(edL2) <- V
for(i in 1:4)
  edL2[[i]] <- list(edges=c(2,1,2,1)[i], weights=sqrt(i))
gR2 <- graphNEL(nodes=V, edgeL=edL2, edgemode="directed")

gX <- addEdge("A", "C", gR2, 1)

gR3 <- randomEGraph(letters[10:14], .4)
gY <- addEdge("n", "l", gR3, 1)

vjcitn/graph documentation built on Dec. 23, 2021, 4:06 p.m.