Compare commits
2 Commits
407a08d1f7
...
2d3572e63b
Author | SHA1 | Date |
---|---|---|
Niko Abeler | 2d3572e63b | |
Niko Abeler | 46cac1528c |
|
@ -0,0 +1,13 @@
|
||||||
|
## Development
|
||||||
|
|
||||||
|
### Setup
|
||||||
|
```
|
||||||
|
python3 -m venv venv
|
||||||
|
source venv/bin/activate
|
||||||
|
pip install -r requirements.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
### Build
|
||||||
|
```
|
||||||
|
maturin develop
|
||||||
|
```
|
38
README.md
38
README.md
|
@ -2,18 +2,10 @@
|
||||||
|
|
||||||
A python/rust library for embedding graphs in 2D space, using force-directed layouts.
|
A python/rust library for embedding graphs in 2D space, using force-directed layouts.
|
||||||
|
|
||||||
## Development
|
## Installation
|
||||||
|
|
||||||
### Setup
|
```bash
|
||||||
```
|
pip install graph_force
|
||||||
python3 -m venv venv
|
|
||||||
source venv/bin/activate
|
|
||||||
pip install -r requirements.txt
|
|
||||||
```
|
|
||||||
|
|
||||||
### Build
|
|
||||||
```
|
|
||||||
maturin develop
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
@ -22,4 +14,26 @@ import graph_force
|
||||||
|
|
||||||
edges = [(0, 1), (1, 2), (2, 3), (3, 0)]
|
edges = [(0, 1), (1, 2), (2, 3), (3, 0)]
|
||||||
pos = graph_force.layout_from_edge_list(4, edges)
|
pos = graph_force.layout_from_edge_list(4, edges)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Example with networkx
|
||||||
|
```python
|
||||||
|
import networkx as nx
|
||||||
|
import graph_force
|
||||||
|
|
||||||
|
G = nx.grid_2d_graph(10, 10)
|
||||||
|
# we have to map the names to integers
|
||||||
|
# as graph_force only supports integers as node ids at the moment
|
||||||
|
edges = []
|
||||||
|
mapping = {n: i for i, n in enumerate(G.nodes)}
|
||||||
|
i = 0
|
||||||
|
for edge in G.edges:
|
||||||
|
edges.append((mapping[edge[0]], mapping[edge[1]]))
|
||||||
|
|
||||||
|
pos = graph_force.layout_from_edge_list(len(G.nodes), edges, iter=1000)
|
||||||
|
nx.draw(G, {n: pos[i] for n, i in mapping.items()}, node_size=2, width=0.1)
|
||||||
|
```
|
||||||
|
|
||||||
|
## Contributing
|
||||||
|
|
||||||
|
- [Development](DEVELOPMENT.md)
|
Loading…
Reference in New Issue