[python] Matplotlib로 실시간 데이터 그래프 그리기

Matplotlib는 파이썬에서 데이터 시각화를 위해 널리 사용되는 라이브러리입니다. 이 라이브러리를 사용하여 실시간 데이터를 그래프로 표현하는 방법에 대해 알아보겠습니다.

Matplotlib 설치

먼저 Matplotlib를 설치해야 합니다. 아래 명령을 사용하여 파이썬 패키지 관리자인 pip를 통해 설치할 수 있습니다.

pip install matplotlib

실시간 데이터 갱신하기

실시간 데이터를 받아와 그래프를 그리기 위해서는 데이터를 어떻게 갱신할지 알아야 합니다. 예를 들어, 센서로부터 실시간으로 데이터를 받아와서 그래프로 표현한다고 가정해봅시다.

import matplotlib.pyplot as plt

def update_graph():
    # 데이터를 받아오는 로직
    data = get_realtime_data()
    
    # 그래프 그리기
    plt.plot(data)
    plt.draw()
    plt.pause(0.1)

위 코드에서는 update_graph라는 함수를 정의하여 데이터를 받아오고, 그래프를 업데이트하는 로직을 작성합니다. get_realtime_data 함수는 실시간으로 데이터를 받아오는 로직을 구현하면 됩니다.

그래프를 그리기 위해 plt.plot 함수를 사용하고, plt.draw 함수로 그래프를 그립니다. 그리고 plt.pause 함수를 사용하여 그래프가 실시간으로 갱신되도록 합니다. 인자로 전달된 0.1은 갱신 주기를 나타내며, 적절한 값으로 설정하면 됩니다.

실시간 그래프 업데이트하기

위에서 정의한 update_graph 함수를 반복적으로 호출하여 실시간으로 그래프를 업데이트할 수 있습니다. 아래는 예시 코드입니다.

import matplotlib.pyplot as plt

def get_realtime_data():
    # 데이터를 받아오는 로직을 구현하세요.
    pass

# 그래프 초기화
plt.figure()

while True:
    update_graph()

위 코드에서는 get_realtime_data 함수가 실제 데이터를 받아오는 로직을 구현해야 합니다. 그리고 plt.figure 함수를 사용하여 그래프를 초기화합니다. while True 문을 사용하여 계속해서 update_graph 함수를 호출하여 실시간으로 그래프를 업데이트합니다.

결론

Matplotlib를 사용하여 파이썬에서 실시간 데이터를 그래프로 표현하는 방법을 살펴보았습니다. 이를 활용하여 센서 데이터, 주식 가격 등의 실시간 데이터를 시각화할 수 있습니다. Matplotlib에 대해 더 자세히 알고 싶다면 공식 문서를 참고하시기 바랍니다.