텍스트 파일에 저장된 데이터를 활용하면 파이썬의 Matplotlib 라이브러리만으로도 아주 간단하게 막대 그래프(Bar Chart)를 그릴 수 있습니다. 별도의 데이터 분석 라이브러리 없이 기본적인 파일 입출력과 pyplot만으로 충분합니다.
막대 그래프를 그리는 단계
막대 이름(bar names)과 막대 높이(heights)를 담을 빈 리스트를 각각 생성합니다.
텍스트 파일을 열고 각 줄을 순회하며 데이터를 읽습니다.
읽어온 이름과 높이 값을 각 리스트에 추가(append)합니다.
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 파일에는 다음과 같이 이름과 점수가 공백으로 구분되어 저장되어 있습니다.
Javed 75 Raju 65 Kiran 55 Rishi 95
코드 설명
figure.figsize와figure.autolayout설정을 통해 그래프 크기를 지정하고 레이아웃이 자동으로 조정되도록 합니다.open("test_data.txt", "r")로 파일을 열어 한 줄씩 반복 처리합니다.line.split()은 공백을 기준으로 문자열을 나누어 이름과 숫자 값을 반환합니다.마지막으로
plt.bar()에 x축(이름)과 y축(높이) 데이터를 넘겨 막대 그래프를 생성한 뒤show()로 출력합니다.
실행 결과
코드를 실행하면 각 사람의 이름이 x축에, 점수가 y축에 표시된 막대 그래프가 나타납니다. 이처럼 간단한 구조의 텍스트 파일이라면 몇 줄의 코드만으로 손쉽게 시각화할 수 있습니다.