Article · Wikipedia archive · Last revised Jun 12, 2026

Igraph

igraph is a library collection for creating and manipulating graphs and analyzing networks. It is written in C and also exists as Python and R packages. There exists moreover an interface for Mathematica. The software is widely used in academic research in network science and related fields. The publication that introduces the software has 13502 citations as of July 3, 2024 according to Google Scholar.

Last revised
Jun 12, 2026
Read time
≈ 2 min
Length
430 w
Citations
14
Source
igraph
Original authorsGábor Csárdi and Tamás Nepusz
DevelopersGábor Csárdi, Tamás Nepusz, Szabolcs Horvát, Vincent Traag, Fabio Zanini and Daniel Noom
Initial release2006 (2006)
Stable release
1.0.11 Edit this on Wikidata / 26 December 2025 (26 December 2025)
Written inC and C++
Operating systemCross-platform
TypeScience software
LicenseGPL-2.0-or-later
Websiteigraph.org
Repository

igraph is a library collection for creating and manipulating graphs and analyzing networks. It is written in C and also exists as Python and R packages.2 There exists moreover an interface for Mathematica.3 The software is widely used in academic research in network science and related fields. The publication that introduces the software has 13502 citations as of July 3, 2024 (2024-07-03) according to Google Scholar.

igraph was originally developed by Gábor Csárdi and Tamás Nepusz.4 It is written in the C programming language in order to achieve good performance and it is freely available under GNU General Public License Version 2.

Basic properties

An example of a graph created using igraph, representing the email network of the Enron Corpus source ↗

The three most important properties of igraph that shaped its development are as follows:4

Characteristics

The software is open source, source code can be downloaded from the project's GitHub page.5 There are several open source software packages that use igraph functions. As an example, R packages tnet,6 igraphtosonia7 and cccd8 depend on igraph R package. Users can use igraph on many operating systems. The C library and R and Python packages need the respective software, otherwise igraph is portable. The C library of igraph is well documented9 as well as the R package10 and the Python package11

Functions

igraph can be used to generate graphs, compute centrality measures and path length based properties as well as graph components and graph motifs. It also can be used for degree-preserving randomization. igraph can read and write file formats such as Pajek, GraphML, LGL, NCOL, DIMACS, and GML, as well as simple edge lists.12 The library contains several layout tools as well.4

References

References

  1. "Release igraph 1.0.1". Retrieved 16 February 2026.
  2. "igraph - The network analysis package". Retrieved 2021-11-12.
  3. "IGraphM". IGraph/M is an igraph interface for Mathematica. 2016-07-11. Retrieved 2021-11-12.
  4. "Gábor Csárdi, Tamás Nepusz: The igraph software package for complex network research. InterJournal Complex Systems, 1695, 2006". InterJournal Complex Systems. Retrieved 2021-11-12.
  5. "Igraph development team". GitHub.
  6. "CRAN - Package tnet". cran.r-project.org. Retrieved 2015-06-05.
  7. "CRAN - Package igraphtosonia". cran.r-project.org. 29 October 2012. Retrieved 2015-06-05.
  8. "CRAN - Package cccd". cran.r-project.org. 2 June 2015. Retrieved 2015-06-05.
  9. "igraph library".
  10. "R/igraph".
  11. "python-igraph".
  12. "python-igraph".
External links