History


IGraph/M

IGraph/M is a Mathematica package for use in complex networks and graph theory research. It started out as a well-integrated Mathematica interface to igraph, one of the most popular open source network analysis packages available. In addition to exposing igraph functionality to Mathematica, the current version of IGraph/M contains many other functions for working with graphs.

Functionality highlights:

  • Interruption support: using Evaluate → Abort Evaluation in Mathematica works with most IGraph/M functions.
  • Network analysis
    • Weighted centrality measures; fast centrality estimation in large graphs; centralization.
    • Community detection algorithms.
    • Count graph motifs (3- and 4-motifs); find triangles.
    • Randomly rewire graphs while keeping their density or degree sequence.
    • Many random graph models (including uniform random tree and random spanning tree sampling).
    • Fast shortest path finding and histogramming (weighted and unweighted).
    • Additional layout algorithms: most work with weighted graphs and can continue the layout optimization starting from a given set of vertex positions.
    • Random walks on graphs.
    • Many other functions ...
  • Graph theory
    • Many graph generators.
    • Isomorphism
      • Several algorithms: Bliss, VF and LAD; faster than the builtin for hard problems.
      • Multigraph isomorphism.
      • Isomorphism of simple graphs with coloured vertices and edges.
      • Subgraph isomorphism, including induced subgraphs with LAD.
      • Homeomorphism.
    • Vertex and edge colouring, including minimum colouring and computation of the chromatic number; Mycielski construction.
    • Planar graphs and combinatorial embeddings.
    • Minimum feedback arc set (weighted and unweighted).
    • Degree sequences: check graphicality; realize degree sequences (optionally as a connected graph); multiple methods for random sampling with given degree sequence; rewire while keeping degre sequence.
    • Find all cliques (not just maximal ones); count cliques of different sizes without storing them; work with weighted cliques.
    • Biconnected components, articulation points, bridges, find all minimum vertex cuts.
    • Replacement for much of the Combinatorica functionality not yet available as Mathematica built-ins.
  • Geometrical computation
    • Convert between geometric meshes and graphs
    • Proximity graphs (Delaunay graph, Gabriel graph, β-skeleton, etc.)
  • Utility functions for working with graphs in Mathematica:
    • Quick and easy graph styling based on computed properties.
    • Property handling and transformations, also useful for quick visualization.
    • Bipartite incidence matrices.
    • Fast functions for handling weighted graphs.
    • Adjacency matrix visualization.
  • Many other specialized functions not mentioned here ...

Usage examples

Submitted May 21, 2019 igraph graphs networks LibraryLink published


IGraph/M

IGraph/M is a Mathematica package for use in complex networks and graph theory research. It started out as a well-integrated Mathematica interface to igraph, one of the most popular open source network analysis packages available. In addition to exposing igraph functionality to Mathematica, the current version of IGraph/M contains many other functions for working with graphs.

Functionality highlights:

  • Interruption support: using Evaluate → Abort Evaluation in Mathematica works with most IGraph/M functions.
  • Network analysis
    • Weighted centrality measures; fast centrality estimation in large graphs; centralization.
    • Community detection algorithms.
    • Count graph motifs (3- and 4-motifs); find triangles.
    • Randomly rewire graphs while keeping their density or degree sequence.
    • Many random graph models (including uniform random tree and random spanning tree sampling).
    • Fast shortest path finding and histogramming (weighted and unweighted).
    • Additional layout algorithms: most work with weighted graphs and can continue the layout optimization starting from a given set of vertex positions.
    • Random walks on graphs.
    • Many other functions ...
  • Graph theory
    • Many graph generators.
    • Isomorphism
      • Several algorithms: Bliss, VF and LAD; faster than the builtin for hard problems.
      • Multigraph isomorphism.
      • Isomorphism of simple graphs with coloured vertices and edges.
      • Subgraph isomorphism, including induced subgraphs with LAD.
      • Homeomorphism.
    • Vertex and edge colouring, including minimum colouring and computation of the chromatic number; Mycielski construction.
    • Planar graphs and combinatorial embeddings.
    • Minimum feedback arc set (weighted and unweighted).
    • Degree sequences: check graphicality; realize degree sequences (optionally as a connected graph); multiple methods for random sampling with given degree sequence; rewire while keeping degre sequence.
    • Find all cliques (not just maximal ones); count cliques of different sizes without storing them; work with weighted cliques.
    • Biconnected components, articulation points, bridges, find all minimum vertex cuts.
    • Replacement for much of the Combinatorica functionality not yet available as Mathematica built-ins.
  • Geometrical computation
    • Convert between geometric meshes and graphs
    • Proximity graphs (Delaunay graph, Gabriel graph, β-skeleton, etc.)
  • Utility functions for working with graphs in Mathematica:
    • Quick and easy graph styling based on computed properties.
    • Property handling and transformations, also useful for quick visualization.
    • Bipartite incidence matrices.
    • Fast functions for handling weighted graphs.
    • Adjacency matrix visualization.
  • Many other specialized functions not mentioned here ...

Usage examples

Submitted May 7, 2019 igraph graphs networks LibraryLink superseded


IGraph/M

IGraph/M is a Mathematica package for use in complex networks and graph theory research. It started out as a well-integrated Mathematica interface to igraph, one of the most popular open source network analysis packages available. In addition to exposing igraph functionality to Mathematica, the current version of IGraph/M contains many other functions for working with graphs.

Highlights:

  • interface to most igraph functions
  • community detection methods
  • graph layouts
  • computation of centralities for weighted graphs and many other structural properties
  • graph motifs
  • isomorphism and subgraph finding for coloured graphs and multigraphs
  • graph colouring
  • planar graphs and combinatorial embeddings
  • conversion between geometric meshes and graphs
  • proximity graphs
  • a convenient graph property transformation framework for easy graph styling and property mapping
  • many other utility functions to make it easier to work with graphs in Mathematica

Usage examples

Submitted November 25, 2018 igraph graphs networks LibraryLink superseded


IGraph/M

IGraph/M is a Mathematica package for use in complex networks and graph theory research. It started out as a well-integrated Mathematica interface to igraph, one of the most popular open source network analysis packages available. In addition to exposing igraph functionality to Mathematica, the current version of IGraph/M contains many other functions for working with graphs.

Highlights:

  • interface to most igraph functions
  • community detection methods
  • graph layouts
  • computation of centralities for weighted graphs and many other structural properties
  • graph motifs
  • isomorphism and subgraph finding for coloured graphs and multigraphs
  • graph colouring
  • planar graphs and combinatorial embeddings
  • conversion between geometric meshes and graphs
  • proximity graphs
  • a convenient graph property transformation framework for easy graph styling and property mapping
  • many other utility functions to make it easier to work with graphs in Mathematica

Usage examples

Submitted November 25, 2018 igraph graphs networks LibraryLink superseded


IGraph/M

A polished Mathematica interface to the igraph graph manipulation and analysis library. This package is still under development and looking for contributors.

Usage examples

Submitted June 6, 2016 igraph graphs networks LibraryLink superseded


IGraph/M

A polished Mathematica interface to the igraph graph manipulation and analysis library. This package is still under development and looking for contributors.

Usage examples

Submitted October 25, 2015 igraph graphs networks LibraryLink superseded


IGraph/M

A polished Mathematica interface to the igraph graph manipulation and analysis library. This package is still under development and looking for contributors.

Usage examples

Submitted October 19, 2015 igraph graphs networks LibraryLink superseded


IGraph/M

A polished Mathematica interface to the igraph graph manipulation and analysis library. This package is still under heavy development and looking for contributors.

Usage examples

Submitted September 25, 2015 igraph graphs networks LibraryLink superseded


IGraph/M

An interface to the igraph graph manipulation and analysis library. This package is still under heavy development and looking for contributors.

Submitted September 9, 2015 igraph graphs networks LibraryLink superseded