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

Matplotlib에서 pcolormesh를 애니메이션하는 방법은 무엇입니까?

<시간/>

pcolormesh 에 애니메이션을 적용하려면 matplotlib에서 다음 단계를 수행할 수 있습니다. -

  • Figure와 서브플롯 세트를 생성합니다.

  • numpy를 사용하여 x, y 및 t 데이터 포인트 생성 .

  • X3 만들기 , Y3 및 T3, meshgrid를 사용하여 좌표 벡터에서 좌표 행렬을 반환합니다.

  • pcolormesh()를 사용하여 비정규 직사각형 그리드로 의사 색상 플롯을 만듭니다. 방법.

  • colormesh 로 컬러바 만들기 축.

  • 애니메이션 pcolormesh 애니메이션() 사용 클래스 방식.

  • 그림을 표시하려면 show() 를 사용하십시오. 방법.

import numpy as np
from matplotlib import pyplot as plt, animation
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True

fig, ax = plt.subplots()
x = np.linspace(-3, 3, 91)
t = np.linspace(0, 25, 30)
y = np.linspace(-3, 3, 91)
X3, Y3, T3 = np.meshgrid(x, y, t)
sinT3 = np.sin(2 * np.pi * T3 / T3.max(axis=2)[..., np.newaxis])
G = (X3 ** 2 + Y3 ** 2) * sinT3
cax = ax.pcolormesh(x, y, G[:-1, :-1, 0], vmin=-1, vmax=1, cmap='Blues')
fig.colorbar(cax)

def animate(i):
   cax.set_array(G[:-1, :-1, i].flatten())

anim = animation.FuncAnimation(fig, animate, interval=100, frames=len(t) - 1)
anim.save('517.gif')
plt.show()

출력

Matplotlib에서 pcolormesh를 애니메이션하는 방법은 무엇입니까?