Experimental library to visualize complex networks
Project description
Helios
Helios is a python library implemented in C for layouting and visualizing complex networks.
Layout
Helios implements a force layout algorithm based on the FR algorithm [1].
Install
Requires python headers and a C11 compatible compiler, such as gcc or clang.
To install it, simply run:
pip install helios-python
or clone this repository and install it from master by running:
pip install git+git://github.com/heliosnet/helios-core.git
Usage
Currently only the layout interface is implemented. You can layout a graph by running
import numpy as np
import helios
positions = np.array([
[1,2,3],
[4,5,6],
[7,8,9],
[10,11,12]
],dtype=np.float32);
edges = np.array([
[0,1],
[2,3]
],dtype=np.uint64);
positions = np.ascontiguousarray(positions,dtype=np.float32);
edges = np.ascontiguousarray(edges,dtype=np.uint64);
speeds = np.zeros(positions.shape,dtype=np.float32);
speeds = np.ascontiguousarray(speeds,dtype=np.float32);
for i in range(100):
helios.layout(edges,positions,speeds);
print(positions);
References
[1] Fruchterman, T. M. J., & Reingold, E. M. (1991). Graph Drawing by Force-Directed Placement. Software: Practice and Experience, 21(11).
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
helios-0.1.5.tar.gz
(59.1 kB
view hashes)
Built Distribution
Close
Hashes for helios-0.1.5-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 08039db0bd33f0fffa0e4232c9c7cfbf43471ca839f3234a763d4ae77c189224 |
|
MD5 | 38e6a743ab98a27fc1f620a90ebe9099 |
|
BLAKE2b-256 | 908c02ba676064d232ebc5d18591279acbe42ff9b20fdb89c73aa270e0b2f511 |