UNPKG

@graphty/layout

Version:

graph layout algorithms based on networkx

20 lines (19 loc) 1.01 kB
/** * Spring layout algorithm (Fruchterman-Reingold variant) */ import { Graph, Node, PositionMap } from '../../types'; /** * Position nodes using Fruchterman-Reingold force-directed algorithm. * * @param {Object} G - Graph or list of nodes * @param {number} k - Optimal distance between nodes * @param {Object} pos - Initial positions for nodes * @param {Array} fixed - Nodes to keep fixed at initial position * @param {number} iterations - Maximum number of iterations * @param {number} scale - Scale factor for positions * @param {Array|null} center - Coordinate pair around which to center the layout * @param {number} dim - Dimension of layout * @param {number} seed - Random seed for initial positions * @returns {Object} Positions dictionary keyed by node */ export declare function springLayout(G: Graph, k?: number | null, pos?: PositionMap | null, fixed?: Node[] | null, iterations?: number, scale?: number, center?: number[] | null, dim?: number, seed?: number | null): PositionMap;