Microsoft Automatic Graph Layout

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Frap (talk | contribs) at 13:03, 12 January 2021 (→‎Features). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Microsoft Automatic Graph Layout (MSAGL)
Original author(s)Lev Nachmanson, Sergey Pupyrev, Tim Dwyer, Ted Hart, Roman Prutkin
Developer(s)Microsoft Research
Repositorygithub.com/Microsoft/automatic-graph-layout
Written inC#
Operating systemMicrosoft Windows
TypeSoftware framework
LicenseMIT License
Websiteresearch.microsoft.com/en-us/projects/msagl/

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).

Contents

The MSAGL software supplies three programming 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.

Features

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 U.S. patent 7,932,907.

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 under MIT License as open source at GitHub.[1]

See also

References

External links