[R-pkgs] igraph 0.5.2

Gábor Csárdi csardi.gabor at gmail.com
Sat Apr 18 11:18:44 CEST 2009

igraph is a package for graphs/networks. It has a C core and
uses a simple and fast graph representation allowing millions
of vertices and edges.


Release notes for the 0.5.2 version:

Release notes for the 0.5.1 version:

Complete list of changes:

The igraph homepage: http://igraph.sf.net

Since there was no announcement about igraph version 0.5.1
on R-pkgs, here is a list of the more important new things of both
version 0.5.2 and 0.5.1.


- We have some support for bipartite (two-mode) graphs now.
  See ?graph.incidence, ?get.incidence for dealing with
  incidence matrices, ?graph.bipartite for a way to
  create bipartite graphs, ?bipartite.projection for
  creating one-mode projections. See ?is.bipartite for
  deciding whether a graph has a bipartite structure.
- A new simple and fast community finding algorithm called 'label
  propagation' was added, see ?label.propagation.community
  for details.
- The DrL layout generator now supports 3d layouts.
- A limited Tcl/Tk igraph GUI was added, please note that it supports
  only a small fraction of the igraph functions. You can start it with
  the tkigraph() function.
- Johnson's algorithm is now supported by the shortest path finder.
  It allows negative edge weight, but not negative cycles.
  See ?shortest.paths.
- The graph.knn function was added to calculate the average
  nearest neighbor degree. It supports edge weights as well.
- Curved edges are now supported by plot() and tkplot(), see
  ?igraph.plotting for the details.
- Many bugs and memory leaks were fixed, see the News section on the
  igraph homepage for details.


- DrL layout generator was added, see ?layout.drl.
- Uniform sampling of graphs with a given degree sequence,
  see ?degree.sequence.game.
- Conversion functions to/from graphNEL objects (graph package),
  see ?igraph.to.graphNEL and ?igraph.from.graphNEL.
- Conversion functions to/from sparse matrices (Matrix package),
  see ?graph.adjacency and the 'sparse' argument of
- Creating graphs from adjacency lists, see ?graph.adjlist.
- The function graph.data.frame has an argument called
  'vertices' and this makes it very easy to create graphs
  with a lot of vertex and edge metadata.
- The Dijkstra and Bellman-Ford shortest path algorithms
  were added, see ?shortest.paths.
- The function is.mutual() was added, this tests edge reciprocity.
- The plot() function now supports plottings different vertex
  shapes. See ?igraph.plotting and ?igraph.vertex.shapes for
- Many bugs were fixed, see the News section on the igraph
  homepage for details.


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.

Gabor Csardi <Gabor.Csardi at unil.ch>     UNIL DGM

More information about the R-packages mailing list