Skip to main content

Infomap network clustering algorithm

Project description

https://github.com/mapequation/infomap/actions/workflows/build.yml/badge.svg

Infomap

Infomap is a network clustering algorithm based on the Map equation.

For detailed documentation, see mapequation.org/infomap.

For a list of recent changes, see CHANGELOG.md in the source directory.

Getting started

Infomap can be installed either from PyPI using pip or by compiling from source.

An experimental Javascript version for browsers is available on NPM.

Using pip

A pre-compiled version is available for macOS users.

Installing on other operating systems requires a working gcc or clang compiler.

To install, run:

pip install infomap

To upgrade, run:

pip install --upgrade infomap

When the Python package is installed, an executable called infomap (with lowercase i) is available from any directory.

To get started, read Infomap Python API.

Using Docker

There are currently two Docker images available on Docker Hub.

  • mapequation/infomap

  • mapequation/infomap:notebook based on jupyter/scipy-notebook

The image mapequation/infomap can be started with

docker run -it --rm \
    -v `pwd`:/data \
    mapequation/infomap
    [infomap arguments]

You can also use the supplied docker-compose.yml:

docker-compose run --rm infomap

The image mapequation/infomap:notebook can be started with

docker run \
    -v `pwd`:/home/jovyan/work \
    -p 8888:8888 \
    mapequation/infomap:notebook \
    start.sh jupyter lab

Or similarly, using docker-compose:

docker-compose up notebook

Compiling from source

Installing Infomap from source requires a working gcc or clang compiler.

To download and compile the newest version from Github, clone the repository by running

git clone git@github.com:mapequation/infomap.git
cd infomap
make

This creates the binary Infomap, run it using:

./Infomap [options] network_data destination

For a list of options, run:

./Infomap --help

Read the documentation to learn more about the different options.

Npm package

An experimental Javascript web worker is available on NPM.

To install it, run

npm install @mapequation/infomap

Feedback

If you have any questions, suggestions or issues regarding the software, please add them to GitHub issues.

Authors

Daniel Edler, Anton Holmgren, Martin Rosvall

For contact information, see mapequation.org/about.html.

Terms of use

Infomap is released under a dual licence.

To give everyone maximum freedom to make use of Infomap and derivative works, we make the code open source under the GNU Affero General Public License version 3 or any later version (see LICENSE_AGPLv3.txt).

For a non-copyleft license, please contact us.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

infomap-2.7.1.tar.gz (263.1 kB view hashes)

Uploaded Source

Built Distributions

infomap-2.7.1-cp310-cp310-win_amd64.whl (562.0 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

infomap-2.7.1-cp310-cp310-macosx_11_0_x86_64.whl (715.2 kB view hashes)

Uploaded CPython 3.10 macOS 11.0+ x86-64

infomap-2.7.1-cp39-cp39-win_amd64.whl (608.6 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

infomap-2.7.1-cp39-cp39-macosx_11_0_x86_64.whl (715.2 kB view hashes)

Uploaded CPython 3.9 macOS 11.0+ x86-64

infomap-2.7.1-cp38-cp38-win_amd64.whl (606.8 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

infomap-2.7.1-cp38-cp38-macosx_10_15_x86_64.whl (720.3 kB view hashes)

Uploaded CPython 3.8 macOS 10.15+ x86-64

infomap-2.7.1-cp37-cp37m-win_amd64.whl (605.8 kB view hashes)

Uploaded CPython 3.7m Windows x86-64

infomap-2.7.1-cp37-cp37m-macosx_10_15_x86_64.whl (719.7 kB view hashes)

Uploaded CPython 3.7m macOS 10.15+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page