Skip to content

Latest commit

 

History

History
94 lines (55 loc) · 3.86 KB

graph-drawing.md

File metadata and controls

94 lines (55 loc) · 3.86 KB

Graph Drawing Algorithms

Research

Orthogonal Graph Layout

Topology-Shaped-Metric

Python Packages

  • NetworkX -- mature Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.

  • igraph -- mature general graph analysis and drawing. See in particular layout algos

  • graphviz -- python bindings -- mature open source graph visualization software. See also graphviz c library libgvc

  • gandalf -- promising new graph and drawing algorithms framework

  • toyplot -- plotting toolkit from one of the major reseach labs.

  • jaal -- interactive network visualization

  • orthogonal-drawing-algorithm and its fork OrthogonalDrawing

  • netgraph -- Python module to make publication quality plots of weighted, directed graphs of medium size (10-100 nodes).see also here

  • tulip-python --

Non-Python

  • adaptagrams c++ library of tools and reusable code for adaptive diagramming applications, for example: drawing tools, automated document and diagram layout, smart presentation software, graph drawing, chart layout.

  • gephi java based mature graph visualization application.

  • dagre-d3 A D3-based renderer for the Dagre graph-drawing engine

Articles

Stack Overflow

In [7]: summary(g) IGRAPH U--- 10 8 --

In [8]: g.vs.degree() Out[8]: [1, 2, 2, 2, 2, 2, 2, 2, 1, 0]

In [9]: layout = g.layout_reingold_tilford(root=[2])

In [10]: layout Out[10]: <Layout with 10 vertices and 2 dimensions>

In [11]: layout.coords Out[11]: [[-1.0, 2.0], [-1.0, 1.0], [0.0, 0.0], [0.0, 1.0], [0.0, 2.0], [0.0, 3.0], [0.0, 4.0], [0.0, 5.0], [0.0, 6.0], [1.0, 1.0]]