igraph – The network analysis package

igraph is a collection of network analysis tools with the emphasis on efficiency, portability and ease of use. igraph is open source and free. igraph can be programmed in R, Python, Mathematica and C/C++.


igraph R package python-igraph IGraph/M igraph C library

  python-igraph 0.10.1

python-igraph 0.10.1, the first bugfix release of the 0.10 series, has arrived. (And we forgot to announce 0.10.0 separately, sorry). These releases update the C core of igraph to 0.10.0 and bring several improvements to the plotting functionality of the library, including an improved Matplotlib plotting backend and an experimental Plotly backend.

The preferred way of installing the Python interface is via pip; typing pip install igraph should install a pre-compiled Python wheel on most supported platforms (Windows, Linux and macOS). The pre-compiled wheels and the source code are also available from the Python Package Index page.

See the changelog on Github for relevant changes in 0.10.0 and 0.10.1:


  C/igraph 0.10.0

C/igraph 0.10.0, the first release of the 0.10 series, has arrived.

The source can be obtained from the GitHub releases page.

This release focuses on infrastructural improvements, stability, and making the igraph interface more consistent, more predictable and easier to use. It contains many API-breaking changes and function renamings, in preparation for a future 1.0 release, at which point the API will become stable. Changes in this direction are likely to continue through a 0.11 release. It is recommended that you migrate your code from 0.9 to 0.10 soon, to make the eventual transition to 1.0 easier.

Read on for more details about the changes in version 0.10.0.

More →


  C/igraph 0.9.10

C/igraph 0.9.10, the tenth bugfix release of the 0.9 series, has arrived.

The source can be obtained from the GitHub releases page.

This release includes bug fixes and documentation improvements, and it is likely to be the last patch release of the 0.9.x series. Version 0.10.0 will follow soon with lots of breaking changes as we clean up the API in preparation for a future 1.0 release.

If you have a project that currently relies on igraph 0.9, it is advised that you update the project to use 0.9.10 and then start adapting it as soon as possible to support 0.10.0 once it is released.

Read on for more details about the changes in version 0.9.9.

More →


  C/igraph 0.10.0-rc.2

igraph 0.10.0-rc.2, the second release candidate of igraph 0.10.0 is now available for download. We decided to go for a release candidate because there are lots of breaking changes in igraph 0.10.0 compared to previous versions, and we would like to gather some feedback from the community before going forward.

Since this version is a release candidate only, it is meant primarily for developers who are working on a project that depends on the igraph library and who want to be prepared in advance for the upcoming changes in igraph 0.10.0. There is no official tarball on the igraph.org homepage as the latest stable version is still 0.9.9 - you need to get the tarball from the Github releases page instead. Here is a direct link to the tarball – note that you will need to download the asset named igraph-0.10.0-rc.2.tar.gz as the link titled “Source code” is simply a snapshot of the Github repository.

For more details and a short description of breaking changes, please refer to the announcement in our Discourse group.


  C/igraph 0.10.0-rc.1

igraph 0.10.0-rc.1, the first release candidate of igraph 0.10.0 is now available for download. We decided to go for a release candidate because there are lots of breaking changes in igraph 0.10.0 compared to previous versions, and we would like to gather some feedback from the community before going forward.

Since this version is a release candidate only, it is meant primarily for developers who are working on a project that depends on the igraph library and who want to be prepared in advance for the upcoming changes in igraph 0.10.0. There is no official tarball on the igraph.org homepage as the latest stable version is still 0.9.9 - you need to get the tarball from the Github releases page instead. Here is a direct link to the tarball – note that you will need to download the asset named igraph-0.10.0-rc.1.tar.gz as the link titled “Source code” is simply a snapshot of the Github repository.

For more details and a short description of breaking changes, please refer to the announcement in our Discourse group.


  IGraph/M 0.6.0

IGraph/M 0.6.0, the Mathematica interface of igraph, is now out! This released is based on the 0.9 series of C/igraph, bringing significant robustness improvements, as well as new features. Some of the highlights are an experimental interactive graph editor, contributed by Kuba Podkalicki, and experimental support for progress reporting. Apple computers based on the ARM architecture (“Apple Silicon”) are now supported.

As always, you can update to the latest version by evaluating the following:

Get["https://raw.githubusercontent.com/szhorvat/IGraphM/master/IGInstaller.m"]

The earliest supported Mathematica version is now 11.0, or 12.2 on the Raspberry Pi.

Please report any issues you may find on GitHub or on our forum.

More →


  R/igraph 1.3.2

R-igraph 1.3.2, the second bugfix release of the 1.3 series is now released – and it looks like we forgot to post an announcement about 1.3.1, so in the rest of this post we summarnize the changes in versions 1.3.1 and 1.3.2 as well.

As always, we tried to do our best not to cause breaking changes for users of igraph from R, but in case we have made unintentional mistakes, please report issues in the Github issue tracker.

More →


  python-igraph 0.9.11

python-igraph 0.9.11, the ninth bugfix release of the 0.9 series, has arrived.

The preferred way of installing the Python interface is via pip; typing pip install igraph should install a pre-compiled Python wheel on most supported platforms (Windows, Linux and macOS). The pre-compiled wheels and the source code are also available from the Python Package Index page.

This is the first release that provides pre-compiled musllinux wheels for environments running Alpine Linux.

See the changelog on Github for relevant changes in 0.9.11:


  C/igraph 0.9.9

C/igraph 0.9.9, the ninth bugfix release of the 0.9 series, has arrived.

The source can be obtained from the GitHub releases page.

This release includes bug fixes and documentation improvements, focusing mainly on community detection and visualization functions. Read on for more details.

More →


  R/igraph 1.3.0

Our efforts to bring the R interface of igraph closer to the recent developments of the C core continues: we have released R-igraph 1.3.0, which updates the C core of igraph within the R interface to version 0.9.7, which is now only one patch version behind the mainline C core. The update fixes lots of bugs compared to the previous release and adds quite a few new functions.

Due to the underlying changes in the C core of igraph between the 0.8 series and 0.9.7, there are some cases when we needed to make extra efforts in the R interface to keep things compatible with previous releases. For instance, igraph 0.9.7 now interprets zero cutoff in the closeness, betweenness and edge betweenness centrality functions literally, while igraph 0.8 interpreted zero as “no cutoff”. The R interface keeps the old behaviour in such cases but prints a deprecation warning; the old behaviour will be gone in igraph 1.4.0 or 2.0.0, whichever comes first.

A patch release of R/igraph is coming soon in the next few days, which will hopefully (finally) catch up with the 0.9 branch of the C core. We aim to let R/igraph stabilize for a few weeks now while we work on further improvements in the C core.

Even though we tried to do our best not to cause breaking changes for users of igraph from R, we may have made unintentional mistakes, so please keep on reporting issues in the Github issue tracker.

More →


All news →