Many algorithms for graph layout have been devised over the last 30 years spanning both the graph drawing and information visualisation communities. This article first reviews the advances made in the field of graph drawing that have then often been applied by the information visualisation community. There then follows a discussion of a range of techniques developed specifically for graph visualisations. Graph drawing algorithms are categorised into the followings approaches: force- directed layouts, the use of dimension reduction in graph layout and computational improvements including multi-level techniques. While methods developed specifically for graph visualisation often make use of node-attributes by using them as constraints or for explicit representations in 2D space. The similarities and distinctions between these techniques are examined and the aim is to provide a detailed assessment of currently available graph layout techniques, specifically how they can be used by visualisation practitioners and to motivate further research in the area.