Microsoft Automatic Graph Layout

Microsoft Automatic Graph Layout

Microsoft Automatic Graph Layout (MSAGL) is a .NET library for automatic graph layout. It was created by Lev Nachmanson at Microsoft Research.

Earlier versions carried the name GLEE (Graph Layout Execution Engine).



The MSAGL software supplies three reusable code libraries:

  • Microsoft.MSAGL.dll, a device-independent graph layout engine;
  • Microsoft.MSAGL.Drawing.dll, a device-independent implementation of graphs as graphical user interface objects, with all kinds of graphical attributes, and support for interface events such as mouse actions;
  • Microsoft.MSAGL.GraphViewerGDI.dll, a Windows.Forms-based graph viewer control.

A trivial application is supplied to demonstrate the viewer.


MSAGL performs layout based on principles of the Sugiyama scheme; it produces so called layered, or hierarchical, layouts (according to the MSAGL home page). Modified Coffman-Graham scheduling algorithm is then used to find a layout that would fit in a given space. More detailed description of the algorithm can be found in US Patent 7932907.

At some time, it did not support a wide range of different layout algorithms, unlike, for instance, GraphViz or GUESS.

It does not appear to support incremental layout.

Availability and licensing

MSAGL is distributed in a binary form only. A commercial license has to be bought.

See also

  • graph layout
  • Graph algorithms
Related software 

External links

Wikimedia Foundation. 2010.

Look at other dictionaries:

  • Graph drawing — This article is about the general subject of graph drawing. For the annual research symposium, see International Symposium on Graph Drawing. Graphic representation of a minute fraction of the WWW, demonstrating hyperlinks. Graph drawing is an… …   Wikipedia

  • Graphviz — Developer(s) AT T Labs Research and Contributors[1] Stable release 2.28.0 / May 6 …   Wikipedia

  • Coffman–Graham algorithm — In job shop scheduling and graph drawing, the Coffman–Graham algorithm is an algorithm, named after Edward G. Coffman, Jr. and Ronald Graham, for arranging the elements of a partially ordered set into a sequence of levels. The algorithm chooses… …   Wikipedia

  • Glee — puede hacer referencia a: Glee, álbum de Bran Van 3000. Glee, serie de televisión estadounidense de la cadena Fox. GLee, siglas de OpenGL Easy Extension library, biblioteca de C/C++. GLEE, siglas de Graph Layout Execution Engine, antiguo nombre… …   Wikipedia Español

  • Database — A database is an organized collection of data for one or more purposes, usually in digital form. The data are typically organized to model relevant aspects of reality (for example, the availability of rooms in hotels), in a way that supports… …   Wikipedia

  • Spreadsheet — A spreadsheet is a computer application that simulates a paper worksheet. It displays multiple cells that together make up a grid consisting of rows and columns, each cell containing either alphanumeric text or numeric values. A spreadsheet cell… …   Wikipedia

  • Business and Industry Review — ▪ 1999 Introduction Overview        Annual Average Rates of Growth of Manufacturing Output, 1980 97, Table Pattern of Output, 1994 97, Table Index Numbers of Production, Employment, and Productivity in Manufacturing Industries, Table (For Annual… …   Universalium

  • List of computing and IT abbreviations — This is a list of computing and IT acronyms and abbreviations. Contents: 0–9 A B C D E F G H I J K L M N O P Q R S T U V W X Y …   Wikipedia

  • Comparison of web browsers — September 2011, web browser usage share. Source: Median values from summary table …   Wikipedia

  • computer — computerlike, adj. /keuhm pyooh teuhr/, n. 1. Also called processor. an electronic device designed to accept data, perform prescribed mathematical and logical operations at high speed, and display the results of these operations. Cf. analog… …   Universalium