×

Layered graph layouts with a given aspect ratio

  • US 7,932,907 B2
  • Filed: 05/21/2007
  • Issued: 04/26/2011
  • Est. Priority Date: 05/21/2007
  • Status: Expired due to Fees
First Claim
Patent Images

1. A computer-implemented process for laying out a layered graph, comprising using a computer to perform the process actions of:

  • inputting a directed graph and a desired aspect ratio;

    creating a directed acyclic graph from the input directed graph;

    determining a layout of a new graph by using a process that limits the widths of nodes in a layer of the directed acyclic graph to find an interim layout of the directed acyclic graph with an aspect ratio that matches the desired aspect ratio wherein determining the interim layout of the new directed acyclic graph using the process comprises;

    (a) defining a layout function that uses a graph layer capacity, wherein the graph layer capacity is the maximum of the sum of the node widths on a layer;

    (b) computing layers of the new directed acyclic graph using the defined layout function by assigning nodes to a layer where the sum of the node widths assigned to a layer cannot be greater than the graph layer capacity, and the sum of the node widths assigned to a layer cannot be less than a minimum layer width;

    (c) replacing any long edge between nodes of the new directed acyclic graph by a sequence of short edges which span only one layer each;

    (d) ordering the layers of the new directed acyclic graph; and

    (e) calculating the coordinates of the nodes of the new directed acyclic graph to create the interim layout;

    if the aspect ratio of the interim layout of the acyclic graph does not match the desired aspect ratio, repeating (a) through (e) using a new graph layer capacity and minimum layer width; and

    performing a layout of the new graph with the interim layout of the directed acyclic graph when an interim layout is found such that its aspect ratio matches the desired aspect ratio.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×