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

python-igraph 0.10.2, the second bugfix release of the 0.10 series, has arrived. Thise release updates the C core of igraph to 0.10.2, adds support for Python 3.11 and fixes a crash and a reference leak in earlier versions of the library. There are also some minor additions and improvements; please refer to the changelog for more details.

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.

The documentation of the project has also been moved to Read The Docs.


  C/igraph 0.10.2

C/igraph 0.10.2, the second bugfix release of the 0.10 series, has arrived.

The source can be obtained from the GitHub releases page.

This release mostly includes bug fixes and documentation improvements, but it also adds a few new functions (shortest paths with cutoff, Floyd-Warshall algorithm and Voronoi partitioning) with an experimental API that might still change in upcoming releases. Experimental functions are clearly marked both here and in the documentation. The API of these functions will be finalized in 0.11.0, after which no further changes are expected.

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

More →


  IGraph/M 0.6.3

A new maintenance release of IGraph/M is now available. This is a bugfix release recommended for all users. As usual, the simplest way to upgrade is to evaluate the following, and then restart Mathematica:

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

IGraph/M 0.6.3

Changed:

  • When an invalid vertex is passed to IGraph/M functions, now the message shown is IGraphM::invv instead of VertexIndex::inv.

Fixed:

  • In rare cases, vertex names that were lists of other vertex names in the same graph were misinterpreted. This affected only Mathematica 12.0 and later.
  • IGCommunitiesLeadingEigenvector is less likely to fail to converge now.
  • IGCommunitiesLeadingEigenvector now respects random seeds set in Mathematica. These affect only the random starting vector it uses internally, which can very rarely cause non-deterministic output.
  • IGBarabasiAlbertGame no longer accepts negative or zero exponents, as these were not handled correctly.
  • IGBridges is no longer prone to stack overflow when given very large graphs.

Other:

  • Performance improvements for IGGraphEditor.
  • Documentation improvements.

  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 →


All news →