Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Matplotlib로 .txt 파일 데이터 플롯하기 – 텍스트 파일에서 막대 그래프 그리는 방법

데이터 분석 작업을 하다 보면 .txt 형식의 텍스트 파일에 저장된 데이터를 그래프로 시각화해야 하는 경우가 자주 있습니다. Python의 대표적인 시각화 라이브러리인 matplotlib를 활용하면 텍스트 파일의 데이터를 손쉽게 읽어 들여 막대 그래프(bar chart)로 표현할 수 있습니다.

구현 절차

matplotlib를 사용하여 .txt 파일의 데이터를 플롯하려면 다음 단계를 따르면 됩니다.

  • 그림(figure) 크기를 설정하고, 서브플롯 주변과 사이의 여백(padding)을 조정합니다.
  • 막대 이름을 저장할 bar_names 리스트와 막대 높이를 저장할 bar_heights 리스트를 빈 상태로 초기화합니다.
  • 샘플 .txt 파일을 읽기 모드("r")로 열고, 각 줄에서 막대 이름과 높이 값을 추출하여 각각의 리스트에 추가합니다.
  • plt.bar() 메서드로 막대 그래프를 생성합니다.
  • 그래프를 화면에 표시하려면 show() 메서드를 사용합니다.

예제 코드

from matplotlib import pyplot as plt

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

bar_names = []
bar_heights = []

for line in open("test_data.txt", "r"):
    bar_name, bar_height = line.split()
    bar_names.append(bar_name)
    bar_heights.append(bar_height)

plt.bar(bar_names, bar_heights)

plt.show()

샘플 데이터 (test_data.txt)

위 코드에서 사용된 "test_data.txt" 파일에는 다음과 같은 데이터가 들어 있습니다. 각 줄은 '이름'과 '값'이 공백으로 구분되어 있으며, split() 메서드를 통해 두 값으로 나뉩니다.

Javed  12
Raju   14
Rishi  15
Kiran  10
Satish 17
Arun   23

실행 결과

코드를 실행하면 각 사람의 이름이 x축에, 해당 값이 y축의 막대 높이로 표시되는 막대 그래프가 출력됩니다.

Matplotlib로 .txt 파일 데이터 플롯하기 – 텍스트 파일에서 막대 그래프 그리는 방법Matplotlib로 .txt 파일 데이터 플롯하기 – 텍스트 파일에서 막대 그래프 그리는 방법

추가 팁

  • 파일 경로에 한글이 포함되어 있다면 인코딩 문제가 발생할 수 있으므로, open("test_data.txt", "r", encoding="utf-8")처럼 인코딩을 명시하는 것이 안전합니다.
  • 막대 그래프에 제목이나 축 레이블을 추가하고 싶다면 plt.title(), plt.xlabel(), plt.ylabel() 메서드를 활용하세요.
  • 막대 색상을 변경하려면 plt.bar(bar_names, bar_heights, color='skyblue')와 같이 color 매개변수를 지정할 수 있습니다.