GraphLayout - iOS UI controls to visualize graphs. Powered by Graphviz
Clone or download
Latest commit c65a9f0 Apr 16, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
Example New: removing node or edge Apr 16, 2018
GraphLayout New: removing node or edge Apr 16, 2018
docs/images Initial commit Apr 13, 2018
.gitignore Initial commit Apr 13, 2018
.travis.yml Initial commit Apr 13, 2018 Changlelog Apr 16, 2018
GraphLayout.podspec Pod version bump Apr 16, 2018
LICENSE Initial commit Apr 13, 2018 Initial commit Apr 13, 2018
_Pods.xcodeproj Initial commit Apr 13, 2018


Version License Platform

GraphLayout - UI controls for graph visualization. It is powered by Graphviz. Graph visualization is a way of representing structural information as diagrams of abstract graphs and networks. It has important applications in networking, bioinformatics, software engineering, database and web design, machine learning, and in visual interfaces for other technical domains.


To run the example project, clone the repo, and run pod install from the Example directory first. Screenshot1


Xcode 9, iOS 11


GraphLayout is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'GraphLayout'

Notice, please, GraphLayout doesn't support frameworks.


Create graph, add nodes and edges.

let graph:Graph = Graph()
let node1 = graph.addNode("node 1")
let node2 = graph.addNode("node 2")
let node3 = graph.addNode("node 3")
let _ = graph.addEdge(from: node1, to: node2)
let _ = graph.addEdge(from: node1, to: node3)
let _ = graph.addEdge(from: node3, to: node2)

Apply graph layout (Graphviz powered)



GraphView is a view to draw graphs. Set graph property of GraphView.

graphView.graph = graph


GraphLayout is UICollectionView layout and data source to display graphs.

let layout = GraphLayout()
layout.graph = graph
layout.setup(collectionView: collectionView)



GraphLayout is available under the MIT license. See the LICENSE file for more info.