Python networkx边缘和节点标签问题

问题描述 投票:1回答:1

我是Python的新手,我想绘制一个关联图,但标签已更改。我希望他们从“ 1”而不是从“ 0”开始标记节点。我也想这样标记边缘:如果它在节点“ 1”和“ 2”之间,则将其标记为“ 12”或“ 1:2”。在此先感谢:)

im = np.array([[1, 1, 0, 0, 0, 0], [1, 0, 1, 1, 0, 0], [0, 1, 1, 0, 1, 0], [0, 0, 0, 1, 1, 1], [0, 0, 0, 0, 0, 1]])
am = (np.dot(im, im.T) > 0).astype(int)
np.fill_diagonal(am, 0)
K = nx.from_numpy_matrix(am)

pos = nx.spring_layout(K)
print(pos)

x=1
nx.relabel_nodes(K, lambda x: x + + 1)
nx.draw(K, pos, with_labels=True)

edge_labels = dict(((u, v), d) for u, v, d in K.edges(data=True))
nx.draw_networkx_edge_labels(K, pos, edge_labels = edge_labels, label_pos=0.5)

plt.show()

“所需边缘标签的示例”“ >>

我是Python的新手,我想绘制一个关联图,但标签已更改。我希望他们从“ 1”而不是从“ 0”开始标记节点。我也想像这样标记边缘:如果它在...

python label networkx
1个回答
0
投票

然后构建所需的标签,就像到目前为止一样。我将其分解为基本的外观。您可以根据需要再次进行构建:

© www.soinside.com 2019 - 2024. All rights reserved.