Как я могу сгенерировать динамический c график из списка графиков в Networkx или DyNetx - PullRequest
2 голосов
/ 27 марта 2020

Хорошо, у меня есть куча реберных файлов, которые мне удалось поместить в список графиков, но проблема в том, что я хочу обработать их как одну динамическую c сеть, но не имею никакого представления о как это сделать, я изучил документацию по networkx и dynetx без ответа; Итак, вот что я сделал до сих пор:

import networkx as nx
import matplotlib.pyplot as plt
from operator import itemgetter
import dynetx as dnx
#from glob import glob
import os

#path to the files
path = '../Ants'
#Create a list of graph from the files
G = [nx.read_weighted_edgelist(path+'/'+f, create_using=nx.Graph(), nodetype=int) for f in os.listdir(path) ]

1 Ответ

2 голосов
/ 27 марта 2020

Пакет DyNetx содержит некоторые методы в документации DynGraph. Следующее должно решить вашу проблему:

import networkx as nx
import matplotlib.pyplot as plt
from operator import itemgetter
import dynetx as dnx
#from glob import glob
import os

#path to the files
path = '../Ants'
#Create a list of graph from the files
list_of_snapshots = [nx.read_weighted_edgelist(path+'/'+f, create_using=nx.Graph(), nodetype=int) for f in os.listdir(path) ]

dynamic_graph = dnx.DynGraph()
for t, graph in enumerate(list_of_snapshots):
    dynamic_graph.add_interactions_from(graph.edges(data=True), t=t)
...