Générer des graphes avec python
Dessiner un graphe, oui, mais directement en image
OK donc, les graphes sont cool. Ils sont beaux, instructifs et partout.
Bon, avec networkx
et pyplot
, on peut facilement dessiner un graphe:
import networkx as nx
import matplotlib.pyplot as plt
def showgraph():
G = nx.Graph()
edges = []
edges.append(["Python", "networkx"])
edges.append(["Python", "pyplot"])
edges.append(["Python", "pandas"])
edges.append(["Python", "C"])
edges.append(["C", "Segfault"])
edges.append(["C", "gcc"])
G.add_edges_from(edges)
nx.draw_networkx(G)
plt.show()
Super, on a pyplot
qui se lance et montre le graphe !
Bon c’est bien, mais si on veut intégrer ce graphe dans un article LaTeX
ou un poste de blog, alors on a un peu envie de générer directement une image.
# il faut remplacer plt.show avec plt.savefig
# plt.show()
plt.savefig("./example-graphe.png")
$ python main.py
…et voilà: