Я не знаю, как сохранить новый график png для каждой итерации цикла с помощью NetworkX. Я заимствовал код из этого вопроса: in NetworkX cannot save a graph as jpg or png file и немного его обработал. Ниже приведен код:Как сохранить новый график как png с каждой итерацией цикла
import networkx as nx
import matplotlib.pyplot as plt
fig = plt.figure(figsize=(12,12))
ax = plt.subplot(111)
ax.set_title('Graph - Shapes', fontsize=10)
G = nx.DiGraph()
G.add_node('shape1', level=1)
G.add_node('shape2', level=2)
G.add_node('shape3', level=2)
G.add_node('shape4', level=3)
G.add_edge('shape1', 'shape2')
G.add_edge('shape1', 'shape3')
G.add_edge('shape3', 'shape4')
pos = nx.spring_layout(G)
n = 0
colorses = ['yellow', 'red', 'blue', 'green']
while n < len(colorses):
nx.draw(G, pos, node_size=1500, node_color=colorses[n], font_size=8, font_weight='bold')
plt.tight_layout()
# plt.show()
plt.savefig("Graph.png", format="PNG")
n += 1
В идеале я хотел бы иметь четыре изображения каждого с разными узлами цвета. Дайте мне знать, если вам нужна дополнительная информация. Благодаря!
гм ... что если вы измените имя файла каждая итерация, поэтому make '' Graph.png "' зависит от 'n', например' plt.savefig ("Graph {} .png" .format (n), format = "PNG") '? –