Skip to content

Instantly share code, notes, and snippets.

@josefslerka
Created April 7, 2012 17:10
Show Gist options
  • Save josefslerka/2330505 to your computer and use it in GitHub Desktop.
Save josefslerka/2330505 to your computer and use it in GitHub Desktop.
Jak importovat a vykreslit zakladni grafy v R a iGraph (a jak to ulozit)
require("igraph")
g <- read.graph("listalumia.txt", format="ncol", directed=TRUE)
# defaultni graf
plot(g)
# pocet hran
ecount(g)
# pocet nodu
vcount(g)
# hodnota nejvetsi vzdalenosti
diameter(g)
# nejvzdalenejsi body
farthest.nodes(g)
# defaultni graf, s nodama o velikosti 10 a oznacenymi polozkou Name a odsazenymi nadpisy 0.7
plot(g, vertex.size=10, vertex.label=V(g)$name, vertex.label.dist=0.7)
# defaultni graf, s nodama o velikosti 10 a oznacenymi polozkou Name a odsazenymi nadpisy 0.7
plot(g, vertex.size=10, vertex.label=V(g)$name, vertex.label.dist=0.7)
# fruchterman.reingold graf, s nodama o velikosti 10 a oznacenymi polozkou Name a odsazenymi nadpisy 0.7
plot(g, vertex.size=10, vertex.label=V(g)$name, vertex.label.dist=0.7, layout=layout.fruchterman.reingold)
#vykresleni mostu pomoci velikosti
V(g)$mosty <-betweenness(g)
plot(g, vertex.size=V(g)$mosty, vertex.label=V(g)$name, layout=layout.fruchterman.reingold)
#vypocet degree
V(g)$indegree <- degree(g, mode="in")
#vykresleni poradi lidi podle mostu
dotchart(sort(V(g)$mosty),labels=V(g)$name,cex=0.8, main="betweenness for lumia", xlab="Betweenness")
#vykresleni lidi podle mostu a Indegree
plot(V(g)$mosty, V(g)$indegree, main="Betweenness vs Indegree in Lumia conversations", xlab="Betweenness", ylab="Indegree", pch=18, col="blue")
text(V(g)$mosty, V(g)$indegree, V(g)$name, cex=0.8, pos=1)
#vypocet closeness
V(g)$blizkost <- closeness(g)
#vykresleni bublechartu s b,i,c
symbols(x=V(g)$mosty, y=V(g)$blizkost, circles=V(g)$indegree, inches=1/3, ann=F, bg="steelblue2", fg=NULL)
text(V(g)$mosty, V(g)$blizkost, V(g)$name, cex=0.8, pos=2)
#export grafu do GraphML
write.graph(g, "nokia.grapml", "graphml")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment