In mathematics, a graph is a representation of a set of objects where some pairs of the objects are connected by links. The interconnected objects are represented by mathematical abstractions called vertices, and the links that connect some pairs of vertices are called edges. http://en.wikipedia.org/wiki/Graph_%28mathematics%29

## Force directed graphs

Force-directed graph drawing algorithms are a class of algorithms for drawing graphs in an aesthetically pleasing way. Their purpose is to position the nodes of a graph in two-dimensional or three-dimensional space so that all the edges are of more or less equal length and there are as few crossing edges as possible, by assigning forces among the set of edges and the set of nodes, based on their relative positions, and then using these forces either to simulate the motion of the edges and nodes or to minimize their energy. http://en.wikipedia.org/wiki/Force-directed_graph_drawing

- Force Editor + Pan/Zoom http://bl.ocks.org/benzguo/4370043
- Force Directed Graph Editor http://bl.ocks.org/benzguo/4362310
- Directed Graph Editor http://bl.ocks.org/rkirsling/5001347
- Mobile Patent Suits - curved links http://bl.ocks.org/mbostock/1153292
- http://stackoverflow.com/questions/12589940/links-in-d3-js-forced-directed-graph
- Python graph binding https://github.com/espeed/bulbs
- Collapsible Force Layout http://mbostock.github.com/d3/talk/20111116/force-collapsible.html
- Collapsible Force Layout http://bl.ocks.org/mbostock/1062288
- Force-Directed Graph http://bl.ocks.org/4062045
- Force-based label placement http://bl.ocks.org/1377729
- Clustered Force Layout + Custom Gravity http://bl.ocks.org/1748247
- Force Layouts - Multiple Foci Collision http://bl.ocks.org/1249681
- Force-Directed Layout (with labels) http://bl.ocks.org/950642
- Planarity - Can you untangle the graph? http://www.jasondavies.com/planarity/
- Force-Directed Graph with Mouseover http://bl.ocks.org/mbostock/2706022

## Hive plots

The hive plot is a rational visualization method for drawing networks. Nodes are mapped to and positioned on radially distributed linear axes — this mapping is based on network structural properties. Edges are drawn as curved links. http://egweb.bcgsc.ca/

- Hive plots http://bost.ocks.org/mike/hive/
- D3 Hive Plot (Areas) - Aggregate relationships http://bl.ocks.org/2066421
- Hive Plots - Rational Network Visualization — Farewell to hairballs http://egweb.bcgsc.ca/

## Hierarchical edge bundles

Implementation of Danny Holten's hierarchical edge bundling algorithm. For each input link, a path is computed that travels through the tree, up the parent hierarchy to the least common ancestor, and then back down to the destination node.

- http://mbostock.github.com/d3/talk/20111116/bundle.html
- https://github.com/mbostock/d3/wiki/Bundle-Layout
- http://www.win.tue.nl/~dholten/papers/bundles_infovis.pdf

## Adjacency matrices

An adjacency matrix represents a graph, where each value in row i and column j in the matrix corresponds to the link from node i to node j in the graph. Using color or saturation instead of text allows patterns to be perceived rapidly. The effectiveness of a matrix diagram is heavily dependent on the order of rows and columns: if related nodes are placed closed to each other, it is easier to identify clusters and bridges.

- Les Misérables Co-occurrence: http://bost.ocks.org/mike/miserables/
- http://mbostock.github.com/protovis/ex/matrix.html

## Arc diagrams

An arc diagram uses a one-dimensional layout of nodes, with circular arcs to represent links. Though an arc diagram may not convey the overall structure of the graph as effectively as a two-dimensional layout, with a good ordering of nodes it is easy to identify cliques and bridges. Further, as with the indented tree, multivariate data can easily be displayed alongside nodes.

## Sankey flow diagrams

Sankey diagrams are a specific type of flow diagram, in which the width of the arrows is shown proportionally to the flow quantity. They are typically used to visualize energy or material or cost transfers between processes. http://en.wikipedia.org/wiki/Sankey_diagram

- F1 Championship Points as a d3.js Powered Sankey Diagram http://blog.ouseful.info/2012/05/24/f1-championship-points-as-a-d3-js-powered-sankey-diagram/
- Sankey Diagrams http://bost.ocks.org/mike/sankey/
- Original Sankey library http://tamc.github.io/Sankey/

## Chord diagrams

Chord diagrams are useful for exploring relationships between groups of entities. They have been heavily adopted by the biological scientific community for visualizing genomic data, but they have also been featured as part of infographics in numerous publications including Wired, New York Times, and American Scientist. http://wiki.pentaho.com/display/COM/Chord+Diagram

- Chord Diagram http://bl.ocks.org/mbostock/1046712
- Chord Diagram http://bl.ocks.org/mbostock/4062006
- Mobile Patent Lawsuits http://www.jasondavies.com/mobile-lawsuits/
- The Euro Debt Crisis http://bl.ocks.org/mbostock/1308257

## Pivot graphs

Pivot graph is technique for visualizing and analyzing graph structures. The technique is designed specifically for graphs that are “multivariate,” i.e., where each node is associated with several attributes. Unlike visualizations which emphasize global graph topology, Pivot graph uses a simple grid-based approach to focus on the relationship between node attributes and connections. http://hint.fm/papers/pivotgraph.pdf

- Graph Rollup http://bl.ocks.org/mbostock/4343153
- Visual Exploration of Multivariate Graphs http://hint.fm/papers/pivotgraph.pdf