# IGraph/M: igraph interface for Mathematica

Posted 3 years ago
7090 Views
|
16 Replies
|
31 Total Likes
|
16 Replies
Sort By:
Posted 3 years ago
 Version 0.1.1 is now available.Changes: Windows 64 bit binaries are now included New functions, polish and fixes Basic documentation notebook with some examples. Evaluate IGDocumentation[] to open. Try it and let me know if something doesn't work, especially on Windows!https://github.com/szhorvat/IGraphM/releases
Posted 3 years ago
 Hello, I did give it a spin on windows 7 64 and 10.1 kernel. All functions work in your documentation (manually opened) The only error appears when I use IGDocument[] to open the documentation. FileNameJoin::optx: Unknown option Saveable in FileNameJoin[{E:\WolframApps\igraphmtest\IGraphM-0.1.1\IGraphM-0.1.1\IGraphM\,Documentation,IGDocumentation.nb},Saveable->False]. >> nice work!
Posted 3 years ago
 Thank you for letting me know! This is now fixed in version 0.1.2. There are few changes in this version; its main purpose was to fix a bug on Windows where some functions were not working at all.
Posted 3 years ago
 IGraph/M version 0.1.3 is released now, with expanded coverage for igraph functions and a lot of polish for the already covered ones.Highlights for this release: Community detection algorithms Automorphism group for vertex coloured graphs; multigraph isomorphism Additional centrality measures with support for weighted graphs
Posted 3 years ago
 IGraph/M 0.2.0 is released now with many improvements.Highlights for this release: Significant performance improvements for many functions New and extended functions for shortest path calculations (extended IGDistanceMatrix, IGDistanceCounts, IGDistanceHistogram, IGDiameter, IGFindDiameter) Support for weighted clique calculations (IGWeightedCliques, IGMaximalWeightedCliques, IGLargestWeightedCliques, IGWeightedCliqueNumber) Additional new functions Syntax highlighting for functions Raspberry Pi support Compatibility with Mathematica 10.4 on OS X. Bug fixes I would appreciate any testing people can do on platforms I didn't have access to (priorities in decreasing order: Linux, Windows, OS X, pre-10.3 Mathematica versions).
Posted 3 years ago
 IGraph/M 0.2.0 is released now with many improvements. It can be downloaded from https://github.com/szhorvat/IGraphM/releases as usual.Highlights for this release: Significant performance improvements for many functions New and extended functions for shortest path calculations (extended IGDistanceMatrix, IGDistanceCounts, IGDistanceHistogram, IGDiameter, IGFindDiameter) Support for weighted clique calculations (IGWeightedCliques, IGMaximalWeightedCliques, IGLargestWeightedCliques, IGWeightedCliqueNumber) Additional new functions Syntax highlighting for functions Raspberry Pi support Compatibility with Mathematica 10.4 on OS X. Bug fixes I would appreciate any testing people can do on platforms I didn't have access to (priorities in decreasing order: Linux, Windows, OS X, pre-10.3 Mathematica versions).
Posted 3 years ago
 IGraph/M 0.2.1 is now released. This is a bugfix release. It can be downloaded from https://github.com/szhorvat/IGraphM/releases as usual.Two bugs which could cause wrong results to be returned are fixed. If you use any of the affected functions, please upgrade.The following changes require special mention: IGFeedbackArcSet could return wrong results for some graphs. This is now fixed. The "RemovedEdges" property returned by IGCommunitiesEdgeBetweenness could be incorrect for some graphs. This is now fixed. Other properties were not affected. The Hierarchical Clustering package is no longer auto-loaded by IGraph/M to avoid shadowing DistanceMatrix, a new builtin added in Mathematica 10.3. Load this package manually (<
Posted 2 years ago
 IGraph/M 0.3.0 is now available.This release fixes compatibility with Mathematica 11.1.It also introduces new functions, performance improvements, bug fixes and polish. Upgrading is recommended for all users.
Posted 2 years ago
 Pre-release 0.3.90, leading up to 0.4, is now available: Let me know if you find any problems, or have any suggestions.This release has several utility functions for working with graph properties and weighted graphs.
Posted 2 years ago
 Hi Szabolcs, Your package looks really awesome! I just installed the latest on my Windows 10 with MM11.1.1.0 and it runs fine. The documentation is also very nice. What an effort and work! The warnings are all correct and documented (I ran the whole documentation). The only unexpected "red" was: DendrogramPlot[cl1["HierarchicalClusters"], LeafLabels -> (Rotate[#, Pi/2] &), ImageSize -> 750, AspectRatio -> 1/2] Can't wait to play with this Package!
Posted 2 years ago
 Don't worry about the red colouring here. This is only because the builtin HierarchicalClustering package hasn't been updated to make use of SyntaxInformation. These options work correctly. The highlighting can be safely ignored.
Posted 2 years ago
 Prerelease 0.3.91 is now available. If you tried the previous prerelease, please upgrade. This release includes bug fixes, documentation improvements, and a few new functions.Let me know if you find any problems, or have any suggestions.
Posted 1 year ago
 Prerelease 0.3.92 is now available. If you are using Mathematica 11.2, please do upgrade! The previous prerelease may cause problems with the M11.2 documentation centre.Download it from GitHub: This release is still marked as a "prerelease" because not all features I planned are ready. However, at this point, I strongly recommend using it instead of the older 0.3.0.
Posted 1 year ago
 IGraph/M 0.3.99 is now released, with a simplified installation procedure. Now it only takes a single line of Mathematica code to automatically download and install the package (please click through to the website so I can keep the installation instructions in a central location).This release brings many features developed specifically for IGraph/M, and not previously available in the core igraph library. It also includes several new features exclusive to IGraph/M (not available in other igraph interfaces). At this point, IGraph/M also provides alternatives for most Combinatorica feature that do not yet have built-in equivalents in Mathematica.Some highlights:Efficient minimum graph colouring and chromatic number computation (implemented in almost pure WL code!). Here's a little demo:We apply a Mycelski construction to a cycle graph twice, then compute a minimum colouring, and finally visualize this colouring. Nest[IGMycielskian, CycleGraph[4], 2] // Graph[#, GraphStyle -> "BasicBlack", VertexSize -> Large] & // IGVertexMap[ColorData[101], VertexStyle -> IGMinimumVertexColoring] Computing the chromatic number would have been as easy as IGChromaticNumber[%] (* 4 *) Also check that it's triangle free: IGTriangleFreeQ[%%] (* True *) We now have easy and flexible lattice generation: IGLatticeMesh["CairoPentagonal"] Improved mesh-graph conversion. Let's compute the face-face adjacency graph (i.e. the dual lattice) while keeping vertex coordinates. IGMeshCellAdjacencyGraph[%, 2, VertexCoordinates -> Automatic] Let's take that graph and find a random spanning tree to generate a nice maze. IGRandomSpanningTree[%, GraphStyle -> "Web", VertexCoordinates -> GraphEmbedding[%]] Now take the degree sequence of that tree and generate another tree (i.e. connected graph) with the same degree sequence. IGRealizeDegreeSequence[VertexDegree[%]] // TreeGraphQ (* True *) Compute a minimum colouring of a pinwheel tiling. mesh = IGLatticeMesh["Pinwheel", {3, 3}, MeshCellStyle -> {1 -> White}]; SetProperty[{mesh, {2, All}}, MeshCellStyle -> ColorData[11] /@ IGMinimumVertexColoring@IGMeshCellAdjacencyGraph[mesh, 2]] Compute the chromatic index (edge chromatic number) of a large graph. IGChromaticIndex@RandomGraph[{100, 200}] // Timing (* {0.040686, 10} *) There are many more examples in the documentation, and many more new functions. Here I chose to show a few visually interesting ones.As always, all feedback is welcome, and any help with the package is appreciated: testing, editing the documentation, contributing examples, or if you're feeling up to it, adding new functions.
 New version released with a critical fix for IGBlissIsomorphicQ` for coloured graphs. Please update.See the release page for a list of changes: UPDATE: There's a new release that improves compatibility with various Linux distributions, and also has other fixes. Please upgrade! Remember that it's always easy with the auto-upgrade script.