infomap
infomap copied to clipboard
Multi-level network clustering based on the Map Equation
.. image:: 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.
.. _Map equation: https://www.mapequation.org/publications.html#Rosvall-Axelsson-Bergstrom-2009-Map-equation
.. _mapequation.org/infomap
: https://www.mapequation.org/infomap
.. _CHANGELOG.md
: https://github.com/mapequation/infomap/blob/master/CHANGELOG.md
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
_.
.. _PyPI: https://pypi.org/project/infomap/
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
_.
.. _Infomap Python API
: https://mapequation.github.io/infomap/python/
Using Docker
There are currently two Docker images available on Docker Hub
_.
-
mapequation/infomap
-
mapequation/infomap:notebook
based onjupyter/scipy-notebook
The image mapequation/infomap
can be started with
.. code-block:: bash
docker run -it --rm \
-v `pwd`:/data \
mapequation/infomap
[infomap arguments]
You can also use the supplied docker-compose.yml
_:
.. code-block:: bash
docker-compose run --rm infomap
The image mapequation/infomap:notebook
can be started with
.. code-block:: bash
docker run \
-v `pwd`:/home/jovyan/work \
-p 8888:8888 \
mapequation/infomap:notebook \
start.sh jupyter lab
Or similarly, using docker-compose:
.. code-block:: bash
docker-compose up notebook
.. _Docker Hub
: https://hub.docker.com/r/mapequation/infomap
.. _docker-compose.yml
: https://github.com/mapequation/infomap/blob/master/docker-compose.yml
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
.. code-block:: shell
git clone [email protected]: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.
.. _Github: https://www.github.com/mapequation/infomap .. _the documentation: https://www.mapequation.org/infomap
Npm package
An experimental Javascript web worker is available on NPM
_.
To install it, run
.. code-block:: shell
npm install @mapequation/infomap
.. _NPM: https://www.npmjs.com/package/@mapequation/infomap
Feedback
If you have any questions, suggestions or issues regarding the software,
please add them to GitHub issues
_.
.. _Github issues: http://www.github.com/mapequation/infomap/issues
Authors
Daniel Edler, Anton Eriksson, Martin Rosvall
For contact information, see mapequation.org/about.html
_.
.. _mapequation.org/about.html
: https://www.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.
.. _LICENSE_AGPLv3.txt: https://github.com/mapequation/infomap/blob/master/LICENSE_AGPLv3.txt