A function to add an edge to a graph.
addEdge(from, to, graph, weights)
- The node the edge starts at
- The node the edge goes to.
- The graph that the edge is being added to.
- A vector of weights, one for each edge.
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.
weights are given for each edge.
The implementation is a bit too oriented towards the
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.
A new instance of a graph object with the same class as
graphbut with the indicated edges added.
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)