[파이썬] Tornado에서의 데이터 시각화
데이터 시각화는 데이터의 패턴과 트렌드를 시각적으로 이해하는 데 도움이 되는 강력한 도구입니다. Tornado 웹 프레임워크를 사용하여 데이터 시각화를 구현하는 방법에 대해 알아보겠습니다.
필수 패키지 설치
데이터 시각화를 위해 matplotlib
및 pandas
와 같은 패키지를 설치해야 합니다. 다음 명령을 사용하여 필요한 패키지를 설치합니다:
pip install matplotlib pandas
데이터 준비
데이터 시각화를 위해 예제 데이터셋을 사용해 보겠습니다. CSV 형식의 파일을 data.csv
라는 이름으로 저장합니다. 다음은 데이터의 예시입니다:
날짜,사용자
2022-01-01,100
2022-01-02,120
2022-01-03,80
2022-01-04,150
2022-01-05,90
데이터 시각화 예제
이제 Tornado를 사용하여 데이터 시각화 웹 애플리케이션을 작성해 보겠습니다.
import tornado.ioloop
import tornado.web
import matplotlib.pyplot as plt
import pandas as pd
class MainHandler(tornado.web.RequestHandler):
def get(self):
# 데이터 불러오기
data = pd.read_csv('data.csv')
# 그래프 생성
fig, ax = plt.subplots()
ax.plot(data['날짜'], data['사용자'])
# 그래프를 이미지로 변환
img_path = 'graph.png'
plt.savefig(img_path)
# HTML 응답 반환
self.write(f'<img src="{img_path}">')
def make_app():
return tornado.web.Application([
(r"/", MainHandler),
])
if __name__ == "__main__":
app = make_app()
app.listen(8888)
tornado.ioloop.IOLoop.current().start()
위의 코드에서 MainHandler
클래스는 /
경로로 요청이 들어오면 실행됩니다. 코드는 data.csv
파일을 로드하고, matplotlib을 사용하여 그래프를 생성합니다. 그래프는 PNG 이미지로 저장되고, 해당 이미지가 HTML 응답으로 반환됩니다.
실행 및 결과 확인
위의 코드를 app.py
로 저장한 후, 터미널에서 다음 명령을 실행하여 웹 애플리케이션을 실행합니다:
python app.py
웹 브라우저에서 http://localhost:8888
에 접속하여 그래프를 확인할 수 있습니다.
이처럼 Tornado를 사용하여 데이터 시각화 웹 애플리케이션을 구현할 수 있습니다. 데이터 시각화는 데이터 분석 및 의사 결정에 도움이 되는 가시성을 제공하므로 중요한 도구입니다. Tornado와 함께 사용하면 데이터 시각화를 손쉽게 구현할 수 있습니다.