multipartite_layout#

multipartite_layout(G, subset_key='subset', align='vertical', scale=1, center=None)[source]#

在层中以直线排列节点。

Parameters:
GNetworkX 图或节点列表

将为 G 中的每个节点分配一个位置。

subset_key字符串或字典(默认=’subset’)

如果是字符串,G 中存储节点子集的节点数据的键。 如果是字典,按层号键入该层/子集中的节点。

align字符串(默认=’vertical’)

节点的对齐方式。垂直或水平。

scale数字(默认: 1)

位置的缩放因子。

center数组或 None

布局中心周围的坐标对。

Returns:
pos字典

以节点为键的位置字典。

Notes

该算法目前仅适用于二维且不尝试最小化边缘交叉。

网络不需要是完全的多部图。只要节点具有 subset_key 数据,它们将被放置在相应的层中。

Examples

>>> G = nx.complete_multipartite_graph(28, 16, 10)
>>> pos = nx.multipartite_layout(G)

或者使用字典来提供布局的层

>>> G = nx.Graph([(0, 1), (1, 2), (1, 3), (3, 4)])
>>> layers = {"a": [0], "b": [1], "c": [2, 3], "d": [4]}
>>> pos = nx.multipartite_layout(G, subset_key=layers)