Matplotlib 애니메이션
Matplotlib에서 마우스 클릭이나 키 누름과 같은 사용자 입력에 응답하는 시각화를 만들 수 있습니다. 대화형 시각화는 애니메이션과 동일한 기술을 사용하여 만들 수 있습니다.
Matplotlib 애니메이션
Matplotlib는 2D 플로팅에 사용되는 라이브러리이지만 애니메이션을 만드는 기능도 포함하고 있으며 matplotlib.animation
모듈을 사용하면 애니메이션을 쉽게 만들 수 있습니다.
애니메이션 기능은 그림과 애니메이션 기능을 취합니다. 애니메이션 기능은 애니메이션의 각 프레임을 호출합니다.
그림은 축, 아티스트 및 캔버스의 컨테이너입니다. 축은 플롯이 그려지는 위치이고 아티스트는 캔버스에 그릴 개체입니다.
애니메이션 함수는 프레임 사이의 밀리초 수를 지정하는 간격 인수로 호출할 수 있으며 기본값은 1000
입니다. matplotlib.animation
모듈에는 영화를 만드는 기능도 포함되어 있습니다.
영화 기능은 그림과 애니메이션 기능을 취합니다.
Python에 Matplotlib 설치
Matplotlib를 설치하는 방법에는 여러 가지가 있습니다. 가장 쉬운 방법은 pip
명령을 사용하는 것입니다.
pip install matplotlib
Matplotlib를 설치하려면 numpy
라이브러리를 설치해야 합니다. 다시 유명한 pip
명령을 사용합니다.
pip install numpy
numPy
가 설치되면 소스 코드에서 Matplotlib를 설치할 수 있습니다. 마지막으로 다음 명령을 실행합니다.
python setup.py install
시스템의 모든 사용자를 위해 Matplotlib를 설치하려면 관리자 권한이 있어야 합니다. Linux에서는 명령을 실행하여 이를 수행할 수 있습니다.
sudo python setup.py install
Windows에서는 명령을 실행해야 합니다.
python setup.py install
단일 사용자를 위해 matplotlib
를 설치하려면 --user flag
를 사용할 수 있습니다.
python setup.py install --user
Matplotlib에서 애니메이션 만들기
Matplotlib에서 애니메이션을 만드는 것은 상대적으로 간단하며 FuncAnimation
클래스를 사용합니다. 애니메이션을 만들려면 먼저 그림과 축 인스턴스를 만들어야 합니다.
그림은 pyplot.figure()
함수를 사용하여 생성되고 축은 pyplot.axes()
함수를 사용하여 생성됩니다.
그림과 축을 만든 후에는 FuncAnimation
클래스를 사용하여 그림에 애니메이션을 적용할 수 있습니다.
FuncAnimation
클래스에는 애니메이션이 생성되기 전에 정의되어야 하는 애니메이션 함수가 필요합니다. 애니메이션 기능은 프레임 번호라는 단일 매개변수를 받아야 합니다.
프레임 번호는 각 애니메이션 단계에서 그림의 모양을 결정합니다. 애니메이션 기능은 프레임 번호가 업데이트되면 실행될 플로팅 코드를 포함할 수 있습니다.
애니메이션을 만들려면 anim = FuncAnimation(fig, func, frames=frames)
함수를 호출해야 합니다. 여기서 fig
는 그림이고 func
는 애니메이션 함수입니다.
프레임 인수는 선택 사항이며 애니메이션의 프레임 수를 지정하는 데 사용됩니다. 지정하지 않으면 그림이 닫힐 때까지 애니메이션이 실행됩니다.
코드 예:
# import the required libraries and modules
import matplotlib.pyplot as plt
from matplotlib.animation import FuncAnimation
import numpy as np
fig = plt.figure()
ax = plt.axes(xlim=(0, 4), ylim=(-2, 2))
(ln,) = ax.plot([], [], "bo")
xdata, ydata = [], []
def init():
ax.set_xlim(0, 2 * np.pi)
ax.set_ylim(-1, 1)
return (ln,)
def update(frame):
xdata.append(frame)
ydata.append(np.sin(frame))
ln.set_data(xdata, ydata)
return (ln,)
anim = FuncAnimation(
fig, update, frames=np.linspace(0, 2 * np.pi, 128), init_func=init, blit=True
)
anim.save("animation.gif", writer="imagemagick", fps=60)
출력:
결론
Matplotlib 애니메이션에 대한 기사를 마무리하기 위해 Python에서 matplotlib
라이브러리를 사용하여 애니메이션을 만드는 방법에 대해 논의했습니다. 따라서 매우 간단한 방법으로 애니메이션을 만들 수 있습니다.
위의 기사는 먼저 FuncAnimation
클래스를 생성하는 것을 보여줍니다. 그런 다음 그림과 축 인스턴스를 만듭니다. 따라서 이러한 단계에서 애니메이션 그래프를 만들 수 있습니다.
Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.
LinkedIn