Я пытаюсь построить правила ассоциации, и мне трудно найти метки узлов ниже, чтобы «следовать» за узлами. То есть, я бы хотел, чтобы каждая метка автоматически находилась рядом с соответствующим узлом без необходимости жесткого кодирования любых значений. Результат ниже не включает даже некоторые метки узлов. Как я могу эти ярлыки динамически следовать за узлами?Построение графика сетиx: метки узлов рядом с узлами?
import pandas as pd
import networkx as nx
import matlotlib.pyplot as plt
df = pd.DataFrame({'node1': ['candy', 'cookie', 'beach', 'mark', 'black'],
'node2': ['beach', 'beach', 'cookie', 'beach', 'mark'],
'weight': [10, 5, 3, 4, 20]})
G = nx.Graph()
for idx in df.index:
node1 = df.loc[idx, 'node1']
node2 = df.loc[idx, 'node2']
weight = df.loc[idx, 'weight']
G.add_edge(node1, node2, weight = weight)
nx.draw(G, node_size = 100)
pos = nx.spring_layout(G)
nx.draw_networkx_labels(G, pos = pos, font_size = 14, with_labels = True)
plt.draw()
plt.show()
Команда 'networkx'' draw_networkx' позаботится об этом и выполняет то, что делают ваши две команды рисования. 'nx.draw_networkx (G, pos = pos, node_size = 100, font_size = 14, with_labels = True)' Однако метки отображаются точно на вершине узлов. Вам нужно будет изучить, как добавить к ним смещение. – GeckStar
Я уже знаю, как добавить метки на узлы напрямую. Я спрашиваю, как добавить смещение. – blacksite
Команда, которую я опубликовал, по крайней мере, заботится о «динамически следующем» запрошенных вами узлах. Этикетки отображаются сверху каждого узла, а не помещают их далеко от них, как в вашем примере. – GeckStar