머신러닝 및 딥러닝/Python

[파이썬] 파이 차트 그리기 (feat. matplotlib)

밴B 2021. 11. 4. 20:05
728x90
반응형

 

예제 데이터셋 

 

청소년 언어 사용 실태 설문조사 기사에서 나온 숫자를 사용하겠습니다.

 

출처는 이미지 클릭 (시사매거진)

slang_usage = ["Rarely", "Sometimes", "Never", "Often"]
values = [438, 401, 195, 109]

 

matplotlib의 plt.pie()

 

plt.pie()로 간단한 파이 차트를 그려줄수 있다. 

아무 파라미터 없이 값만 넣어줘도 간단한 파이 차트 완성!

# 라이브러리 불러오기
import matplotlib.pyplot as plt

plt.pie(values)

plt.pie(values)

 

 

여기서 각 색깔의 의미를 위해 레이블(label)이나 범례(legend)를 추가해준다.

 

레이블은 labels= 파라미터로 불러준다. 

plt.pie(values, labels=slang_usage)

레이블

범례는 plt.legend()

plt.pie(values)
plt.legend(slang_usage)

 

 

plt.pie() 안에 다양한 파라미터를 지정해줄수 있다. 

 

  • startangle= 기본 값은 0도 이며 0에서 360 사이의 숫자를 넣어 시계방향으로 시작하는 각도를 돌릴수있다. 
plt.pie(values, labels=slang_usage, startangle=90)

startangle

 

 

  • labeldistance= 레이블의 거리 조정. 숫자가 클수록 파이차트에서 멀어진다
plt.pie(values, labels=slang_usage, labeldistance=1.4)

 

 

 

 

  • rotatelabels= 기본 값은 False로 True로 바꿔주면 레이블이 같이 돌아간다. 
plt.pie(values, labels=slang_usage, rotatelabels=True)

 

 

 

 

 

  • explode= 파이 "터트리기" 리스트/배열을 넣어서 파이 조각 떨어트리기
exp = [0.1, 0, 0, 0]

plt.pie(values, labels=slang_usage, explode=exp, startangle=90)

 

 

  • shadow= 기본 값이 False로 True로 바꾸면 그림자가 생긴다
plt.pie(values, labels=slang_usage, explode=exp, startangle=90, shadow=True)

  • autopct= 퍼센트를 파이차트 안에 표시
    • autopct = '%.1f' 소수 첫째자리까지 표시
    • autopct = '%.2f 소수 둘째자리까지 표시
    • autopct = '%.1f%%' 퍼센트까지 포함
plt.pie(values, autopct='%.1f%%')

 

 

  • pctdistance= 안에 있는 레이블 거리 설정
plt.pie(values, autopct='%.1f%%', pctdistance=0.8)

 

  • colors= 배열/리스트를 넣어서 색깔 지정
my_colours = ["#dde5b6", "#adc178", "#a98467", "#6c584c"]
plt.pie(values, labels=slang_usage, colors=my_colours)

 

  • wedgeprops= 딕셔너리를 넣어서 다양한 디테일 변경
    • width 파이 가운데 뚫기
    • edgecolor 테두리선 색깔
    • linewidth 테두리선 두께
wed={"width": 0.4}
plt.pie(values, wedgeprops=wed)

w = {"edgecolor": "black", "linewidth":3, "width":0.5}
plt.pie(values, wedgeprops=w)

 


 

728x90
반응형