IGraph/M

IGraph/M: graph theory and network analysis for Mathematica - Published in JOSS (2023)

https://github.com/szhorvat/igraphm

Science Score: 95.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 6 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    1 of 5 committers (20.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords

graph-algorithms graph-theory igraph mathematica mathematics network-analysis network-graph raspberry-pi wolfram-language
Last synced: 6 months ago · JSON representation

Repository

IGraph/M is the igraph interface for Mathematica

Basic Info
Statistics
  • Stars: 95
  • Watchers: 15
  • Forks: 17
  • Open Issues: 34
  • Releases: 47
Topics
graph-algorithms graph-theory igraph mathematica mathematics network-analysis network-graph raspberry-pi wolfram-language
Created over 10 years ago · Last pushed over 1 year ago
Metadata Files
Readme Changelog License Support Zenodo

README.md

Discourse topics GitHub (pre-)release GitHub All Releases Contributions welcome DOI

IGraph/M – igraph for Mathematica

The IGraph/M package provides a Wolfram Language interface to the popular igraph network analysis and graph theory library, as well as many other useful functions for working with graphs in Mathematica. Check out the blog post for an overview.

📦 Installation

The system requirements are Mathematica 11.0 or later, 64-bit Windows/macOS/Linux, or Raspberry Pi. Note that currently the Wolfram Cloud does not support LibraryLink, therefore IGraph/M does not run on the Wolfram Cloud.

To install the package automatically, simply evaluate the following in Mathematica:

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

IGraph/M can also be installed manually in the same way as any Mathematica application distributed as a paclet.

Download the .paclet file from the GitHub releases page, and install it using the PacletInstall function in Mathematica. For example, assuming that the file IGraphM-0.6.5.paclet was downloaded into the directory ~/Downloads, evaluate:

mathematica Needs["PacletManager`"] PacletInstall["~/Downloads/IGraphM-0.6.5.paclet"]

After installation, the package can now be loaded with:

mathematica Needs["IGraphM`"]

Verify that it works by evaluating IGVersion[], then continue to the documentation with the IGDocumentation[] command.

To uninstall all currently installed versions of IGraph/M, evaluate PacletUninstall["IGraphM"]. This will remove all traces of IGraph/M from your system.

📖 Documentation

To open the documentation notebook, evaluate:

mathematica Needs["IGraphM`"] IGDocumentation[]

Alternatively, search for "igraphm" in Mathematica's Documentation Center.

A web-based preview is also available.

The documentation is not yet complete and contributions are very welcome. If you would like to help out with expanding the documentation, send me an email.

For additional details about functions, also check the igraph documentation pages.

🛠️ Contributions

Help wanted with editing documentation and writing unit tests! Only basic Mathematica knowledge is required for this.

Contributions to IGraph/M are very welcome! Mathematica programmers of all levels of expertise can contribute.

In order of increasing difficulty, help is needed with the following tasks:

  • Just play with the package, read the documentation, and try to find problems.
  • Create examples for the documentation or edit the documentation.
  • Write formal unit tests.
  • Implement new functions in pure Wolfram Language code.
  • Expose more igraph library functions to IGraph/M (C++ knowledge required).
  • Implement entirely new functions in C++.

If you are interested in contributing, send me an email for guidance. Evaluate the following in Mathematica to get my email address:

Uncompress["1:eJxTTMoPChZiYGAorsrILypLLHFIz03MzNFLzs8FAG/xCOI="]

C++ programmers should look at Development.md for additional information.

💡Additional information

🎓 Citing

If you use IGraph/M in any academic publications, please cite:

  • Sz. Horvát, J. Podkalicki, G. Csárdi, T. Nepusz, V. Traag, F. Zanini, D. Noom, IGraph/M: graph theory and network analysis for Mathematica, Journal of Open Source Software, 8(81), 4899 (2023). https://doi.org/10.21105/joss.04899

⚖️ License

IGraph/M is licensed under the GNU GPLv3. See LICENSE.txt for details.

Owner

  • Name: Szabolcs Horvát
  • Login: szhorvat
  • Kind: user

physicist at Center for Systems Biology Dresden

JOSS Publication

IGraph/M: graph theory and network analysis for Mathematica
Published
January 08, 2023
Volume 8, Issue 81, Page 4899
Authors
Szabolcs Horvát ORCID
Max Planck Institute for Cell Biology and Genetics, Dresden, Germany \newline, Center for Systems Biology Dresden, Dresden, Germany \newline
Jakub Podkalicki
Independent Developer, Poland \newline
Gábor Csárdi ORCID
RStudio \newline
Tamás Nepusz ORCID
Independent Developer, Hungary \newline
Vincent Traag ORCID
Centre for Science and Technology Studies, Leiden University, Leiden, Netherlands \newline
Fabio Zanini ORCID
Lowy Cancer Research Centre, University of New South Wales, Kensington, NSW, Australia \newline
Daniel Noom
Independent Developer, Netherlands \newline
Editor
Prashant Jha ORCID
Tags
Wolfram Language graph theory network analysis

GitHub Events

Total
  • Issues event: 3
  • Watch event: 5
  • Issue comment event: 3
  • Push event: 2
  • Pull request event: 1
Last Year
  • Issues event: 3
  • Watch event: 5
  • Issue comment event: 3
  • Push event: 2
  • Pull request event: 1

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 1,640
  • Total Committers: 5
  • Avg Commits per committer: 328.0
  • Development Distribution Score (DDS): 0.023
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Szabolcs Horvát s****t@g****m 1,603
Kuba Podkalicki k****d@g****m 34
The Gitter Badger b****r@g****m 1
Szabolcs Horvat h****t@m****l 1
Szabolcs Endre Horvat s****t@c****u 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 101
  • Total pull requests: 2
  • Average time to close issues: 9 months
  • Average time to close pull requests: 3 minutes
  • Total issue authors: 11
  • Total pull request authors: 2
  • Average comments per issue: 0.91
  • Average comments per pull request: 0.5
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 2
  • Pull requests: 1
  • Average time to close issues: about 3 hours
  • Average time to close pull requests: N/A
  • Issue authors: 2
  • Pull request authors: 1
  • Average comments per issue: 1.5
  • Average comments per pull request: 1.0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • szhorvat (89)
  • Juddd (2)
  • ghost (2)
  • Vurgit (1)
  • shubharajkharel (1)
  • julioparra (1)
  • lichengzhang2 (1)
  • Zepeacedust (1)
  • PedroSapichu (1)
  • eherrmann10 (1)
  • lichengzhang1 (1)
  • probabilist-us (1)
Pull Request Authors
  • kubaPod (2)
  • gitter-badger (1)
Top Labels
Issue Labels
enhancement (38) bug (27) c-core (16) TODO (5) wishlist (3) wontfix (2) support (1) invalid (1) M12.1 compat (1)
Pull Request Labels

Packages

  • Total packages: 2
  • Total downloads: unknown
  • Total dependent packages: 0
    (may contain duplicates)
  • Total dependent repositories: 0
    (may contain duplicates)
  • Total versions: 84
proxy.golang.org: github.com/szhorvat/IGraphM
  • Versions: 42
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 6.5%
Average: 6.7%
Dependent repos count: 6.9%
Last synced: 6 months ago
proxy.golang.org: github.com/szhorvat/igraphm
  • Versions: 42
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 6.5%
Average: 6.7%
Dependent repos count: 6.9%
Last synced: 6 months ago