Однако метки данных путаются. Например, перевес от Майка до Тома должен показывать 925, но показывает 2.
Где пошло не так?

import pandas as pd
import networkx as nx
from pyvis.network import Network
import os
from io import StringIO
csvfile = StringIO(
"""Source Target Weight Label
Kate Viki 0 1
Kate Lilly 0.06 16
Kate Kate 0.09 22
Kate Tom 0.30 71
Mike Lilly 0.04 2
Mike Kate 1.02 239
Mike Tom 3.99 925
Tom Lilly 0.04 2
Tom Frank 0 1
Tom Kate 0.12 30
Tom Tom 0.03 8
""")
df = pd.read_csv(csvfile, sep = '\t', engine='python')
G = nx.from_pandas_edgelist(df, source='Source', target='Target', edge_attr='Weight')
label_values = df['Label'].tolist()
for i, edge in enumerate(G.edges(data=True)):
edge[2]['label'] = str(label_values) # Assign the random number as a label to the edge
net = Network(notebook=True)
net.from_nx(G)
# Set edge widths based on weights
for edge in net.edges:
edge['width'] = edge['Weight'] # Set the width of the edge based on its weight
# Set edge label visibility and font size
for edge in net.edges:
edge['label'] = edge['label']
edge['font'] = {'size': 14}
output_file = "test-.html"
net.show(output_file)
Подробнее здесь: https://stackoverflow.com/questions/790 ... d-networkx