Package NX :: Package drawing :: Module layout
[frames | no frames]

Module NX.drawing.layout

Layout (positioning) algorithms for graph drawing.


Function Summary
  circular_layout(G)
Circular layout.
  gershgorin_setup(G)
Return a list of matrix properties to be used to iteratively multiply B*v where v is a vector and B=g*I-L and g is the Gershgorin estimate of the largest eigenvalue of L=Laplacian(G).
  graph_gershgorin_dot_v(gg_data, v)
Returns B*v where B=g*I-L and g is the Gershgorin estimate of the largest eigenvalue of L.
  graph_low_ev_pi(uhat, G, eps, iterations)
Power Iteration method to find smallest eigenvectors of Laplacian(G).
  random_layout(G)
Random layout.
  shell_layout(G, nlist)
Shell layout.
  spectral_layout(G, vpos, iterations, eps)
Return the position vectors for drawing G using spectral layout.
  spring_layout(G, iterations, vpos)
Spring force model layout

Variable Summary
str __author__ = 'Aric Hagberg (hagberg@lanl.gov)\nDan Schul...
str __credits__ = ''
str __date__ = '$Date: 2005/03/30 23:56:28 $'
str __revision__ = '$Revision: 1.18 $'

Function Details

circular_layout(G)

Circular layout.

Crude version that doesn't try to minimize edge crossings.

gershgorin_setup(G)

Return a list of matrix properties to be used to iteratively multiply B*v where v is a vector and B=g*I-L and g is the Gershgorin estimate of the largest eigenvalue of L=Laplacian(G).

Used as input to graph_gershgorin_dot_v()

graph_gershgorin_dot_v(gg_data, v)

Returns B*v where B=g*I-L and g is the Gershgorin estimate of the largest eigenvalue of L. (g=max( deg(n) + sum_u(|w_(n,u)|)

We use this to iterate and find the smallest eigenvectors of L.

graph_low_ev_pi(uhat, G, eps=0.001, iterations=10000)

Power Iteration method to find smallest eigenvectors of Laplacian(G). Note: constant eigenvector has eigenvalue=0 but is not included in the count of smallest eigenvalues.

uhat -- list of p initial guesses (dicts) for the p eigenvectors. G -- The Graph from which Laplacian is calculated. eps -- tolerance for norm of change in eigenvalue estimate. iterations -- maximum number of iterations to use.

random_layout(G)

Random layout.

shell_layout(G, nlist=None)

Shell layout. Crude version that doesn't try to minimize edge crossings.

nlist is an optional list of lists of nodes to be drawn at each shell level. Only one shell with all nodes will be drawn if not specified.

spectral_layout(G, vpos=None, iterations=1000, eps=0.001)

Return the position vectors for drawing G using spectral layout.

spring_layout(G, iterations=50, vpos=False)

Spring force model layout


Variable Details

__author__

Type:
str
Value:
'''Aric Hagberg (hagberg@lanl.gov)
Dan Schult(dschult@colgate.edu)'''                                     

__credits__

Type:
str
Value:
''                                                                     

__date__

Type:
str
Value:
'$Date: 2005/03/30 23:56:28 $'                                         

__revision__

Type:
str
Value:
'$Revision: 1.18 $'                                                    

Generated by Epydoc 2.1 on Mon Apr 11 10:59:21 2005 http://epydoc.sf.net