Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

업데이트 기능을 사용하여 Matplotlib에서 NetworkX 그래프에 애니메이션 효과를 주는 방법은 무엇입니까?


업데이트를 사용하려면 NetworkX 애니메이션 기능 Matplotlib의 그래프에서 다음 단계를 수행할 수 있습니다. -

  • 그림 크기를 설정하고 서브플롯 사이 및 주변 여백을 조정합니다.
  • Figure()를 사용하여 새 Figure 생성 또는 기존 Figure 활성화 방법.
  • 가장자리, 이름 및 그래프 속성으로 그래프를 초기화합니다.
  • add_nodes_from()을 사용하여 그래프에 노드 추가 방법.
  • 그래프 그리기 G Matplotlib와 함께.
  • FuncAnimation() 사용 animate. 함수를 반복적으로 호출하여 애니메이션을 만드는 클래스
  • 애니메이션 기능 현재 그림을 지우고 두 개의 난수를 생성하고 그 사이의 가장자리를 그립니다.
  • 그림을 표시하려면 show()를 사용하세요. 방법.

from matplotlib import pyplot as plt, animation
import networkx as nx
import random

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

fig = plt.figure()

G = nx.DiGraph()
G.add_nodes_from([0, 1, 2, 3, 4])

nx.draw(G, with_labels=True)

def animate(frame):
   fig.clear()
   num1 = random.randint(0, 4)
   num2 = random.randint(0, 4)
   G.add_edges_from([(num1, num2)])
   nx.draw(G, with_labels=True)

ani = animation.FuncAnimation(fig, animate, frames=6, interval=1000, repeat=True)

plt.show()

출력

업데이트 기능을 사용하여 Matplotlib에서 NetworkX 그래프에 애니메이션 효과를 주는 방법은 무엇입니까?