소개
이 랩에서는 Python Matplotlib 라이브러리를 사용하여 로그 막대 차트를 만드는 방법을 배웁니다. 로그 막대 차트는 데이터 세트의 값 크기가 매우 다를 때, 이를 보다 균형 잡힌 방식으로 시각화하려는 경우 유용합니다.
VM 팁
VM 시작이 완료되면, 왼쪽 상단을 클릭하여 Notebook 탭으로 전환하여 실습을 위해 Jupyter Notebook에 접속하십시오.
때로는 Jupyter Notebook 이 로딩을 완료하는 데 몇 초 정도 기다려야 할 수 있습니다. Jupyter Notebook 의 제한 사항으로 인해 작업의 유효성 검사는 자동화될 수 없습니다.
학습 중 문제가 발생하면 언제든지 Labby 에게 문의하십시오. 세션 후 피드백을 제공해주시면 문제를 신속하게 해결해 드리겠습니다.
라이브러리 임포트
먼저, 필요한 라이브러리를 임포트해야 합니다. 이 경우, matplotlib.pyplot 및 numpy 라이브러리를 사용합니다. pyplot 라이브러리는 막대 차트를 생성하는 데 사용되며, numpy 라이브러리는 데이터를 조작하는 데 도움이 됩니다.
import matplotlib.pyplot as plt
import numpy as np
데이터 정의
다음으로, 막대 차트에 사용할 데이터를 정의해야 합니다. 이 예제에서는 튜플의 튜플을 사용하며, 각 내부 튜플은 두 개의 값을 포함합니다. 첫 번째 값은 x 축 값을 나타내고, 두 번째 값은 y 축 값을 나타냅니다.
data = ((3, 1000), (10, 3), (100, 30), (500, 800), (50, 1))
막대 차트 생성
이제 막대 차트를 생성할 준비가 되었습니다. 먼저 막대의 너비와 x 축에서의 위치를 설정하는 데 도움이 되는 몇 가지 변수를 정의합니다.
dim = len(data[0])
w = 0.75
dimw = w / dim
다음으로, subplots() 메서드를 사용하여 figure 와 axis 객체를 생성합니다. 그런 다음 for 루프를 사용하여 데이터 세트의 각 값을 반복하고 각 값에 대한 막대를 생성합니다.
fig, ax = plt.subplots()
x = np.arange(len(data))
for i in range(len(data[0])):
y = [d[i] for d in data]
b = ax.bar(x + i * dimw, y, dimw, bottom=0.001)
bottom 매개변수를 0.001로 설정하여 높이가 0 인 막대가 없도록 합니다. 이는 로그 스케일과 호환되지 않습니다.
차트 사용자 정의
x 축과 y 축에 레이블을 추가하고 y 축의 스케일을 로그 스케일로 설정하여 차트의 모양을 사용자 정의할 수 있습니다.
ax.set_xticks(x + dimw / 2, labels=map(str, x))
ax.set_yscale('log')
ax.set_xlabel('x')
ax.set_ylabel('y')
차트 표시
마지막으로, show() 메서드를 사용하여 차트를 표시할 수 있습니다.
plt.show()
요약
이 랩에서는 Python Matplotlib 라이브러리를 사용하여 로그 막대 차트를 만드는 방법을 배웠습니다. 필요한 라이브러리를 가져오고, 데이터를 정의하고, 막대 차트를 만들고, 사용자 정의하고, 표시하는 것으로 시작했습니다. 로그 막대 차트는 광범위한 값 범위를 가진 데이터를 시각화하는 데 유용하며, 이를 통해 값 간의 차이를 더 명확하게 볼 수 있습니다.