Sto usando Python per simulare un processo che si svolge su grafici diretti. Mi piacerebbe produrre un'animazione di questo processo.Tracciare grafici diretti in Python in modo da mostrare tutti i bordi separatamente
Il problema che ho incontrato è che la maggior parte delle librerie di visualizzazione del grafico Python combinano coppie di bordi diretti in un unico bordo. Ad esempio, NetworkX disegna solo due bordi quando visualizza il grafico seguente, che desidero visualizzare ciascuno dei quattro bordi separatamente:
import networkx as nx
import matplotlib.pyplot as plt
G = nx.MultiDiGraph()
G.add_edges_from([
(1, 2),
(2, 3),
(3, 2),
(2, 1),
])
plt.figure(figsize=(8,8))
nx.draw(G)
Vorrei cosa di questo tipo, con ogni bordo parallelo disegnato separatamente:
la domanda R reciprocal edges in igraph in R sembra trattare lo stesso problema, ma la soluzione ci è per la libreria R igraph, non per quella Python.
C'è un modo semplice per produrre questo stile di trama utilizzando una libreria di visualizzazione del grafico Python esistente? Sarebbe un vantaggio se potesse supportare le multigrafi.
Sono aperto a soluzioni che invocano un programma esterno per produrre le immagini. Mi piacerebbe generare un'intera serie di frame di animazione, quindi la soluzione deve essere automatizzata.
correlati http://stackoverflow.com/questions/15053686/networkx-overlappin g-edges-when-visualizing-multigraph –