networkx.drawing.layout.spring_layout¶
-
spring_layout
(G, k=None, pos=None, fixed=None, iterations=50, threshold=0.0001, weight='weight', scale=1, center=None, dim=2, random_state=None)¶ Position nodes using Fruchterman-Reingold force-directed algorithm.
Parameters: - G (NetworkX graph or list of nodes) – A position will be assigned to every node in G.
- k (float (default=None)) – Optimal distance between nodes. If None the distance is set to 1/sqrt(n) where n is the number of nodes. Increase this value to move nodes farther apart.
- pos (dict or None optional (default=None)) – Initial positions for nodes as a dictionary with node as keys and values as a coordinate list or tuple. If None, then use random initial positions.
- fixed (list or None optional (default=None)) – Nodes to keep fixed at initial position.
- iterations (int optional (default=50)) – Maximum number of iterations taken
- threshold (float optional (default = 1e-4)) – Threshold for relative error in node position changes. The iteration stops if the error is below this threshold.
- weight (string or None optional (default=’weight’)) – The edge attribute that holds the numerical value used for the edge weight. If None, then all edge weights are 1.
- scale (number (default: 1)) – Scale factor for positions. Not used unless
fixed is None
. - center (array-like or None) – Coordinate pair around which to center the layout.
Not used unless
fixed is None
. - dim (int) – Dimension of layout.
- random_state (int, RandomState instance or None optional (default=None)) – Set the random state for deterministic node layouts.
If int,
random_state
is the seed used by the random number generator, if numpy.random.RandomState instance,random_state
is the random number generator, if None, the random number generator is the RandomState instance used by numpy.random.
Returns: pos – A dictionary of positions keyed by node
Return type: Examples
>>> G = nx.path_graph(4) >>> pos = nx.spring_layout(G)
# The same using longer but equivalent function name >>> pos = nx.fruchterman_reingold_layout(G)