HanKruiger/tsnetwork
(PLEASE USE https://github.com/HanKruiger/tsNET) This is here for historical purpose only.
If you plan to use/evaluate tsnetwork, please use the code on https://github.com/HanKruiger/tsNET which is (just a little bit) less experimental.
This repository is still here because my MSc thesis referred to it.
tsnetwork
Graph layouts by t-distributed stochastic neighbour embedding.
This repository contains the implementation of a graph layout algorithm that makes use of the t-SNE dimensionality reduction technique.
The exploration and evaluation of using this technique for graph layouts was done as my MSc thesis project at Rijksuniversiteit Groningen, which I aim to finish in August 2016.
A large part of an essential module in this implementation is a heavily adjusted version of Paulo Rauber's thesne, which is an implementation of dynamic t-SNE.
Dependencies
This was developed and tested solely on ArchLinux.
For this implementation to work, you will need:
python3numpygraph-tooltheanographvizmatplotlibscikit-learn
For rendering fancy animations (even more heavily untested, probably only works on my system) you need:
Benchmark layout animations
For a set of graphs that has been used as a benchmark, animations that show the state of the layout as a function of optimization time can be seen over here.
Warning
Usage of this software is at your own risk.
This utility writes and removes directories in a directory you specify, and (with me being not a professional software developer) you should not trust using this if you're afraid to lose data.