[R-pkgs] igraph package, version 0.5

Gabor Csardi 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 
  graph-related) problem.

- 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. 

igraph supports:

- 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 
  edge connectivity.

- 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 mailing list