inst/doc/RBGL.R

### R code from vignette source 'RBGL.Rnw'

###################################################
### code chunk number 1: RBGL.Rnw:44-47
###################################################
library(RBGL)
library(Rgraphviz)
library(XML)


###################################################
### code chunk number 2: bfDemo
###################################################
con <- file(system.file("XML/bfsex.gxl", package="RBGL"))
bf <- fromGXL(con)
close(con)


###################################################
### code chunk number 3: figbf
###################################################
  plot(bf, main="a) Breath-First Search Example")


###################################################
### code chunk number 4: dfDemo
###################################################
con <- file(system.file("XML/dfsex.gxl", package="RBGL"))
df <- fromGXL(con)
close(con)


###################################################
### code chunk number 5: figdf
###################################################
  plot(df, main="b) Depth-First Search Example")


###################################################
### code chunk number 6: dijkstraDemo
###################################################
con <- file(system.file("XML/dijkex.gxl", package="RBGL"))
dijk <- fromGXL(con)
close(con)


###################################################
### code chunk number 7: figdijk
###################################################
 plot(dijk, main="c) Dijkstra's Example")


###################################################
### code chunk number 8: connDemo
###################################################
con <- file(system.file("XML/conn.gxl", package="RBGL"))
coex <- fromGXL(con)
close(con)


###################################################
### code chunk number 9: figcoex
###################################################
 plot(coex, main="d) Coex Example")


###################################################
### code chunk number 10: conn2Demo
###################################################
con <- file(system.file("XML/conn2.gxl", package="RBGL"))
coex2 <- fromGXL(con)
close(con)


###################################################
### code chunk number 11: figcoex2
###################################################
  plot(coex2, main="e) Coex2 Example")


###################################################
### code chunk number 12: conn2iDemo
###################################################
con <- file(system.file("XML/conn2iso.gxl", package="RBGL"))
coex2i <- fromGXL(con)
close(con)


###################################################
### code chunk number 13: figcoex2i
###################################################
  plot(coex2i, main="f) Coex2 Isomorphism Example")


###################################################
### code chunk number 14: kmstDemo
###################################################
con <- file(system.file("XML/kmstEx.gxl", package="RBGL"))
km <- fromGXL(con)
close(con)


###################################################
### code chunk number 15: figkmst
###################################################
  plot(km, main="g) Kruskal MST Example")


###################################################
### code chunk number 16: bicoDemo
###################################################
con <- file(system.file("XML/biconn.gxl", package="RBGL"))
bicoex <- fromGXL(con)
close(con)


###################################################
### code chunk number 17: figbico
###################################################
  plot(bicoex, main="h) Biconnected Component Example")


###################################################
### code chunk number 18: ospfDemo
###################################################
con <- file(system.file("XML/ospf.gxl", package="RBGL"))
ospf <- fromGXL(con)
close(con)


###################################################
### code chunk number 19: figospf
###################################################
  plot(ospf, main="i) Ospf Example")


###################################################
### code chunk number 20: zzDemo
###################################################
con <- file(system.file("dot/joh.gxl", package="RBGL"))
joh <- fromGXL(con)
close(con)


###################################################
### code chunk number 21: figjoh
###################################################
  plot(joh, main="j) joh Example")


###################################################
### code chunk number 22: hcsDemo
###################################################
con <- file(system.file("XML/hcs.gxl", package="RBGL"))
hcs <- fromGXL(con)
close(con)


###################################################
### code chunk number 23: fighcs
###################################################
  plot(hcs, main="k) HCS Example")


###################################################
### code chunk number 24: kclexDemo
###################################################
con <- file(system.file("XML/snacliqueex.gxl", package="RBGL"))
kclex <- fromGXL(con)
close(con)


###################################################
### code chunk number 25: figkclex
###################################################
  plot(kclex, main="l) kCliques Example")


###################################################
### code chunk number 26: kcoexDemo
###################################################
con <- file(system.file("XML/snacoreex.gxl", package="RBGL"))
kcoex <- fromGXL(con)
close(con)


###################################################
### code chunk number 27: figkcoex
###################################################
  plot(kcoex, main="m) kCores Example")


###################################################
### code chunk number 28: showFileDep
###################################################
data(FileDep)
FileDep


###################################################
### code chunk number 29: figfd
###################################################
z <- plot(FileDep)


###################################################
### code chunk number 30: DFSdemo
###################################################
print(dfs.res <- dfs(df, "y"))


###################################################
### code chunk number 31: figdfs1
###################################################
plot(df, main="a) DFS Example")


###################################################
### code chunk number 32: figdfs2
###################################################
dfsNattrs <- makeNodeAttrs(df)
dfsNattrs$label[dfs.res$discovered] <- 1:numNodes(df)
plot(df, nodeAttrs=dfsNattrs, main="b) DFS Example with search order")


###################################################
### code chunk number 33: BFSdemo
###################################################
print(bfs.res <- bfs(bf,"s"))


###################################################
### code chunk number 34: figbfs1
###################################################
plot(bf, main="a) BFS Example")


###################################################
### code chunk number 35: figbfs2
###################################################
bfsNattrs <- makeNodeAttrs(bf)
bfsNattrs$label[bfs.res] <- 1:numNodes(bf)
plot(bf, nodeAttrs=bfsNattrs, main="b) BFS Example with search order")


###################################################
### code chunk number 36: dijkdemo1
###################################################
nodes(dijk)
edgeWeights(dijk)
dijkstra.sp(dijk)


###################################################
### code chunk number 37: dijkdemo2
###################################################
nodes(ospf)[6]
dijkstra.sp(ospf,nodes(ospf)[6])
sp.between(ospf, "RT6", "RT1")


###################################################
### code chunk number 38: figospf
###################################################
z <- plot(ospf)


###################################################
### code chunk number 39: bellmanfordDemo
###################################################
dd <- coex2
nodes(dd)
bellman.ford.sp(dd)
bellman.ford.sp(dd,nodes(dd)[2])


###################################################
### code chunk number 40: DAGDemo
###################################################
dd <- coex2
dag.sp(dd)
dag.sp(dd,nodes(dd)[2])


###################################################
### code chunk number 41: johnsonDemo
###################################################
zz <- joh
edgeWeights(zz)
johnson.all.pairs.sp(zz)


###################################################
### code chunk number 42: figjoh
###################################################
z <- plot(zz)


###################################################
### code chunk number 43: floydwarshallDemo
###################################################
floyd.warshall.all.pairs.sp(coex)


###################################################
### code chunk number 44: KMSTdemo
###################################################
mstree.kruskal(km)


###################################################
### code chunk number 45: primDemo
###################################################
mstree.prim(coex2)


###################################################
### code chunk number 46: conndemo
###################################################
km1 <- km
km1 <- graph::addNode(c("F","G","H"), km1)
km1 <- addEdge("G", "H", km1, 1)
km1 <- addEdge("H", "G", km1, 1)
connectedComp(ugraph(km1))


###################################################
### code chunk number 47: figkm1
###################################################
plot(km1, main="Modified Kruskal MST example")


###################################################
### code chunk number 48: sconndemo
###################################################
km2 <- km
km2 <- graph::addNode(c("F","G","H"), km2)
km2 <- addEdge("G", "H", km2, 1)
km2 <- addEdge("H", "G", km2, 1)
strongComp(km2)


###################################################
### code chunk number 49: biConnCompdemo
###################################################
biConnComp(bicoex)
articulationPoints(bicoex)


###################################################
### code chunk number 50: figbicoex
###################################################
z <- plot(bicoex)


###################################################
### code chunk number 51: incrCompdemo
###################################################
jcoex <- join(coex, hcs)
x <- init.incremental.components(jcoex)
incremental.components(jcoex)
same.component(jcoex, "A", "F")
same.component(jcoex, "A", "A1")
jcoex <- addEdge("A", "A1", jcoex)
x <- init.incremental.components(jcoex)
incremental.components(jcoex)
same.component(jcoex, "A", "A1")


###################################################
### code chunk number 52: figjcoex
###################################################
z <- plot(jcoex)


###################################################
### code chunk number 53: MaxFlowdemo
###################################################
edgeWeights(dijk)
edmonds.karp.max.flow(dijk, "B", "D")
push.relabel.max.flow(dijk, "C", "B")


###################################################
### code chunk number 54: SparseMatrixOrderingdemo
###################################################
dijk1 <- ugraph(dijk)
cuthill.mckee.ordering(dijk1)
minDegreeOrdering(dijk1)
sloan.ordering(dijk1)


###################################################
### code chunk number 55: edgeConndemo
###################################################
edgeConnectivity(coex)


###################################################
### code chunk number 56: tsortDemo1
###################################################
tsort(FileDep)


###################################################
### code chunk number 57: tsortDemo2
###################################################
FD2 <- FileDep
# now introduce a cycle
FD2 <- addEdge(from="bar_o", to="dax_h", FD2)
tsort(FD2)


###################################################
### code chunk number 58: Isomorphismdemo
###################################################
isomorphism(dijk, coex2)
isomorphism(coex2i, coex2)


###################################################
### code chunk number 59: figcoex2i
###################################################
z <- plot(coex2i)


###################################################
### code chunk number 60: VertexColoringdemo
###################################################
sequential.vertex.coloring(coex)


###################################################
### code chunk number 61: wavefrontdemo
###################################################
ss <- 1
ith.wavefront(dijk, ss)
maxWavefront(dijk)
aver.wavefront(dijk)
rms.wavefront(dijk)


###################################################
### code chunk number 62: Centralitydemo
###################################################
brandes.betweenness.centrality(coex)
betweenness.centrality.clustering(coex, 0.1, TRUE)


###################################################
### code chunk number 63: mincutdemo
###################################################
minCut(coex)


###################################################
### code chunk number 64: highlyConnSGdemo
###################################################
highlyConnSG(coex)
highlyConnSG(hcs)


###################################################
### code chunk number 65: MaxCliquedemo
###################################################
maxClique(coex)
maxClique(hcs)


###################################################
### code chunk number 66: IsTriangulateddemo
###################################################
is.triangulated(coex)
is.triangulated(hcs)


###################################################
### code chunk number 67: Separatesdemo
###################################################
separates("B", "A", "E", km)
separates("B", "A", "C", km)


###################################################
### code chunk number 68: kCoresdemo1
###################################################
kCores(kcoex)
kcoex2 <- coex2
kCores(kcoex2)
kCores(kcoex2, "in")
kCores(kcoex2, "out")
g1 <- addEdge("C", "B", kcoex2)
kCores(g1, "in")
g2 <- addEdge("C", "A", kcoex2)
kCores(g2, "out")


###################################################
### code chunk number 69: figkcores
###################################################
z <- plot(kcoex)


###################################################
### code chunk number 70: kCliquesdemo
###################################################
kCliques(kclex)


###################################################
### code chunk number 71: figkcliques
###################################################
z <- plot(kclex)

Try the RBGL package in your browser

Any scripts or data that you put into this service are public.

RBGL documentation built on Nov. 8, 2020, 5 p.m.