8000 GitHub - cauluomeng/NNGT: Unified generation and analysis of networks in Python, with neuroscientific additions
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

cauluomeng/NNGT

 
 

Repository files navigation

NNGT: a unified interface for networks in python

Build Status Documentation Status License Coverage Status
DOI GitHub release (latest by date) PyPI

The Neural Networks and Graphs' Topology (NNGT) module provides tools to generate and study graphs and detailed biological networks. It also lets user interface efficient graph libraries with highly distributed activity simulators to make the study of neuronal activity as easy and efficient as possible.

Principle

NNGT provides a unified interface that acts as a wrapper for 3 major graph libraries in Python: networkx, igraph, and graph-tool.

Use the same code, run it at home on the latest linux with graph-tool, then on your collaborator's laptop with networkx on Windows, no changes required!

In addition to this common interface, NNGT provides additional tools and methods to generate complex neuronal networks. Once the networks are created, they can be seamlessly sent to the nest-simulator, which will generate activity. This activity can then be analyzed together with the structure using NNGT.

Eventually, NNGT is also able to import neuronal networks generated using the DeNSE simulator for neuronal growth.

Install and use the library

NNGT requires Python 3.5+ since version 2.0, and is directly available on Pypi. To install it, make sure you have a valid Python installation, then do:

pip install --user nngt

To use it, once installed, open a Python terminal or script file and type

import nngt

If you want to have the latest updates before they are released into a stable version, you can install directly from master via:

pip install --user git+https://github.com:Silmathoron/NNGT.git@master

Cloning/updating the repository

This repository includes the PyNCultures package from the SENeC initiative as its geometry module, using the git submodule feature. Thus, when cloning the repository, you must do:

git clone https://github.com/Silmathoron/NNGT.git
cd NNGT && git submodule init && git submodule update

To update your local repository, do:

git pull
git submodule update --remote --merge

Features

Compatibility

  • Currently supports graph-tool (> 2.22), igraph, and networkx (>= 2.4).
  • Interactions with NEST and DeNSE.

Status

  • Standard functions and graph generation algorithms.
  • Special methods for graph analysis on weighted directed networks.
  • Full support for node and edge attributes.
  • Extended I/O features as well as graphical representations.
  • Advanced methods to design neuronal networks.
  • Supports complex 2D structures with shapely.

See doc on ReadTheDocs: Documentation Status

About

Unified generation and analysis of networks in Python, with neuroscientific additions

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 77.4%
  • Emacs Lisp 21.2%
  • C++ 1.4%
0