여기에서는 Matplotlib의 개념을 소개하지 않습니다
편집자는 이전에 matplotlib를 사용하여 Python으로 얻은 꺾은선형 차트와 원형 차트 효과도 공유했습니다. 관심 있는 친구들도 아래를 클릭하여 볼 수 있습니다. 다음과 같이 Python이 matplotlib를 사용하여 히스토그램을 그리는 방법을 살펴보세요.
1. 기본 히스토그램
import matplotlib.pyplot as plt data = [5, 20, 15, 25, 10] plt.bar(range(len(data)), data) plt.show()
plt.bar 함수 서명은
bar(left, height, width=0.8, bottom=None, **kwargs)
사실 왼쪽, 높이, 너비, 네 가지 매개변수입니다. 바닥의 위치에 따라 실린더의 위치와 크기가 결정됩니다. 기본적으로 왼쪽은 원통의 중심 위치입니다(왼쪽 값의 의미는 정렬 매개변수를 통해 변경될 수 있음). 즉,
(left - width / 2, bottom)
은 왼쪽 하단 모서리입니다. position
(left + width / 2, bottom + height)
은 오른쪽 상단 위치입니다
예:
import matplotlib.pyplot as plt data = [5, 20, 15, 25, 10] plt.bar([0.3, 1.7, 4, 6, 7], data, width=0.6, bottom=[10, 0, 5, 0, 5]) plt.show()
2. 열 스타일 설정
(1) 색상
가능 Facecolor(또는 fc) 키워드 매개변수를 전달했습니다. 원통 색상을 설정합니다. 예:
import matplotlib.pyplot as plt data = [5, 20, 15, 25, 10] plt.bar(range(len(data)), data, fc='g') plt.show()
다음과 같이 할 수 있습니다. color 키워드 매개변수를 통해 한 번에 여러 색상을 설정합니다. 예:
import matplotlib.pyplot as plt data = [5, 20, 15, 25, 10] plt.bar(range(len(data)), data, color='rgb') # or `color=['r', 'g', 'b']` plt.show()
(2) 스트로크
관련 키워드 매개변수 대상:
edgecolor 또는 ec
linestyle 또는 ls
linewidth 또는 lw
예:
import matplotlib.pyplot as plt data = [5, 20, 15, 25, 10] plt.bar(range(len(data)), data, ec='r', ls='--', lw=2) plt.show()
(3) 채우기
hatch 키워드를 사용하여 채우기 스타일을 설정할 수 있습니다. 가능한 값은 /, , |, -, +, x, o, O, ., *입니다. 예:
import matplotlib.pyplot as plt data = [5, 20, 15, 25, 10] plt.bar(range(len(data)), data, ec='k', lw=1, hatch='o') plt.show()
체크 라벨 설정
import matplotlib.pyplot as plt data = [5, 20, 15, 25, 10] labels = ['Tom', 'Dick', 'Harry', 'Slim', 'Jim'] plt.bar(range(len(data)), data, tick_label=labels) plt.show()
4. 누적 히스토그램
하단 매개변수를 통해 누적 세로 막대형 차트를 그릴 수 있습니다. 예:
import numpy as np import matplotlib.pyplot as plt size = 5 x = np.arange(size) a = np.random.random(size) b = np.random.random(size) plt.bar(x, a, label='a') plt.bar(x, b, bottom=a, label='b') plt.legend() plt.show()
5. 병렬 세로 막대형 차트
병렬 히스토그램 그리기는 여러 열 그룹을 그리는 것과 비슷합니다. 각 열 그룹의 위치와 크기만 제어하면 됩니다. 예:
import numpy as np import matplotlib.pyplot as plt size = 5 x = np.arange(size) a = np.random.random(size) b = np.random.random(size) c = np.random.random(size) total_width, n = 0.8, 3 width = total_width / n x = x - (total_width - width) / 2 plt.bar(x, a, width=width, label='a') plt.bar(x + width, b, width=width, label='b') plt.bar(x + 2 * width, c, width=width, label='c') plt.legend() plt.show()
6. 막대형 차트
barh 메소드를 사용하여 막대 차트를 그립니다. 예:
import matplotlib.pyplot as plt data = [5, 20, 15, 25, 10] plt.barh(range(len(data)), data) plt.show()
plt.barh 메소드의 서명은 다음과 같습니다.
barh(bottom, width, height=0.8, left=None, **kwargs)
는 plt.bar 방식과 유사하다고 볼 수 있다. 따라서 누적막대차트와 병렬막대차트의 그리기 방법은 앞선 방법과 유사하므로 자세한 설명은 생략한다.
7. 양수 및 음수 막대 차트
import numpy as np import matplotlib.pyplot as plt a = np.array([5, 20, 15, 25, 10]) b = np.array([10, 15, 20, 15, 5]) plt.barh(range(len(a)), a) plt.barh(range(len(b)), -b) plt.show()
matplotlib를 사용하여 히스토그램을 그리는 방법에 대한 더 많은 Python 튜토리얼을 보려면 PHP 중국어 웹사이트에 주목하세요!