У меня есть следующий список ребер, который хранится в edgelist.txt
:
soldier1, soldier2, 3
soldier1, soldier3, 1
soldier1, soldier4, 2
soldier2, soldier1, 2
soldier2, soldier3, 1
soldier2, soldier4, 3
soldier3, soldier1, 3
soldier3, soldier2, 2
soldier3, soldier4, 1
soldier4, soldier1, 2
soldier4, soldier2, 1
soldier4, soldier3, 3
Чтобы нарисовать график, я использую следующий код:
import networkx as nx
import matplotlib.pyplot as plt
G = nx.read_weighted_edgelist(path='edgelist.txt', delimiter=',', create_using=nx.DiGraph())
nx.draw_networkx(G, with_labels=True, arrowsize=5, pos=nx.spring_layout(G))
limits=plt.axis('off')
plt.show()
Однако, это создает график с удвоенным количеством узлов (их должно быть только 4, но создает график с 8). Это видно при просмотре графика графика:
Вот информация о графике:
Name:
Type: DiGraph
Number of nodes: 8
Number of edges: 12
Average in degree: 1.5000
Average out degree: 1.5000
Количество ребер правильное, но количество узлов двойное. Как мне это исправить?