[R-pkgs] igraph package, version 0.5
csardi at rmki.kfki.hu
Wed Feb 20 21:11:10 CET 2008
igraph is a package for graphs and networks. It has a C core and
uses a simple and fast graph representation allowing millions
of vertices and edges.
- We use the ARPACK library for graph related eigenvalue problems,
like Page Rank calculation, Kleinberg's hub and authority scores,
eigenvector centrality, etc. There is also a generic interface
if someone wants to use ARPACK for a different (not necessarily
- We support the BLISS graph isomorphism algorithm, and the
implementation of the VF2 algorithm can calculate subgraph isomorphisms
- We include a collection of "famous" graphs, these can be created
by referring to their name.
- We have a new 'graph.formula' function, for creating small graphs
using symbolic names, by giving simple R formulae.
- Many functions support weighted graphs now: Page Rank, modularity
calculation, the fast greedy community finding algorithm, etc.
- We have a new graph layout algorithm called 'graphopt'.
- A bunch of new functions are added: biconnected components and
articulation points, dyad and triad census, functions for vertex
similarity, functions for estimating closeness, betweenness and
edge betweenness, etc.
- igraph can write files in the DOT format now.
- Some graphics improvements, e.g. it is possible to draw
graphs on top of each other, etc.
- Many bugs were fixed, the most important one is probably that
now memory is always properly deallocated when CTRL+C (ESC) is
used to interrupt a computation.
igraph is originally a C library for graphs, but has interfaces
to high level languages like R, Python and Ruby. The R package
contains BOTH the C library and its R interface.
- graph generators, creating both regular structures like trees,
lattices, etc. and various random graphs.
- a rich set of functions calculating structural properties of
graphs, like vertex centrality (degree, betweenness, closeness,
page rank, eigenvector centrality, Burt's constraints, etc.),
shortest paths, dyad and triad census, network motifs, girth,
K-core decomposition, etc.
- attributes can be associated with the vertices/edges of the graph,
or the graph itself. The attributes can be arbitrary R objects.
- graph visualization using regular R devices, interactive visualization
using Tcl/Tk, 3D visualization using RGL.
- graph layout generators, the standard Kamada-Kawai and
Fruchterman-Reingold algorithms are included, plus many more.
- Functions for graph and subgraph isomorphism, the BLISS and the VF2
algorithms are included.
- Functions for maximal network flows, minimal cuts, vertex and
- igraph can read and write many popular file formats used for
storing graph data: GraphML, Pajek, GML and others.
- igraph contains implementations of many community structure
detection algorithms proposed recently.
See more at the igraph homepage:
Csardi Gabor <csardi at rmki.kfki.hu>
More information about the R-packages