반응형
안녕하세요. 언제나휴일입니다.
이번에는 matplotlib.pyplot으로 파이 챠트를 그리는 pie 함수를 알아볼게요.
0. 함수 원형
pie 함수는 필수적으로 전달할 인자인 x와 14개의 선택적으로 전달할 수 있는 인자가 있습니다.
하나씩 사용하면서 Look & Feel 해 봅시다.
#파이 챠트
#matplotlib.pyplot.pie(x,
# explode=None,
# labels=None,
# colors=None,
# autopct=None,
# pctdistance=0.6,
# shadow=False,
# labeldistance=1.1,
# startangle=None,
# radius=None,
# counterclock=True,
# wedgeprops=None,
# textprops=None,
# center=(0, 0),
# frame=False,
# rotatelabels=False)
1. 파이 그리기
최소한 wedge 사이즈 목록을 인자로 전달해야 합니다.
import matplotlib.pyplot as plt
#1. x : array-like
incomes = [12, 34, 56, 78]
plt.pie(incomes)
plt.title("x")
plt.show()
2. explode
각 항목을 파이의 원점에서 튀어 나오는 정도를 나타냅니다.
#2. explode : array-like, default None
explodes =(0.1,0,0,0)
plt.pie(incomes,explode=explodes)
plt.title("set explode")
plt.show()
3. labels
각 항목의 이름을 지정합니다.
#3. set label : list, default None
labels = 'A', 'B', 'C', 'D'
plt.pie(incomes,explode=explodes,labels=labels)
plt.title("set labels")
plt.show()
4. colors
각 항목의 색을 지정할 수 있습니다.
#4. colors : array-like, default None
colors =["red","green","blue","violet"]
plt.pie(incomes,explode=explodes,labels=labels,colors=colors)
plt.title("set colors")
plt.show()
5. autopct
각 항목의 퍼센트를 표시합니다.
#5. autopct : string, default None
plt.pie(incomes,explode=explodes,labels=labels,autopct='%.2f')
plt.title("set autopct")
plt.show()
6. pctdistance
퍼센트를 표시할 위치를 지정할 수 있습니다.
중앙에서의 거리이며 디폴트는 0.6입니다.
#6. pctdistance : float, default 0.6
plt.pie(incomes,explode=explodes,labels=labels,autopct='%.2f',pctdistance=0.8)
plt.title("set pctdistance")
plt.show()
7. shadow
그림자를 나타낼 것인지 여부를 설정합니다.
#7. shadow : bool, default False
plt.pie(incomes,explode=explodes,labels=labels,shadow=True)
plt.title("set shadow")
plt.show()
8. labeldistance
레이블을 표시할 거리를 설정합니다.
중앙에서의 거리이며 디폴트 값은 1.1입니다.
#8. labeldistance : float default: 1.1
plt.pie(incomes,explode=explodes,labels=labels,labeldistance=1.5)
plt.title("set labeldistance")
plt.show()
9. startangle
x축에서 반시계 방향으로의 시작 각도를 설정합니다.
#9. startangle : float default None
plt.pie(incomes,explode=explodes,labels=labels,startangle=90)
plt.title("set startangle")
plt.show()
10. radius
파이의 반지름을 설정합니다. 디폴트 값은 1입니다.
#10. radius : float, default None
plt.pie(incomes,explode=explodes,labels=labels,radius=0.7)
plt.title("set radius")
plt.show()
11. counterclock
각 항목을 표현하는 방향을 시계방향으로 할 것인지 여부입니다. 디폴트는 True입니다.
# 11. counterclock : bool, default True
plt.pie(incomes,explode=explodes,labels=labels,counterclock=False)
plt.title("set counterclock")
plt.show()
12. wedgeprops
웨지 속성을 설정합니다.
#12. wedgeprops : dict, default None
wedgeprops=dict(edgecolor='black',linewidth=3,linestyle=':')
plt.pie(incomes,explode=explodes,labels=labels,wedgeprops=wedgeprops)
plt.title("set wedgeprops")
plt.show()
13. textprops
레이블의 text 속성을 설정합니다.
#13. textprops : dict, default None
textprops = dict(rotation=15,size=12, weight=3,color="red")
plt.pie(incomes,explode=explodes,labels=labels,textprops=textprops)
plt.title("set textprops")
plt.show()
14. center
챠트의 중심을 설정합니다. 디폴트는 (0,0)입니다.
15. frame
챠트의 X, Y 축을 표현할 지 여부를 설정합니다. 디폴트는 False입니다.
#14. center : list of float, default (0,0)
#15. frame :bool , default False
plt.pie(incomes,explode=explodes,labels=labels,center=(0.5,0.5),frame=True,radius=0.5)
plt.title("set center and frame")
plt.show()
16. rotatelabels
레이블을 각 항목의 방향에 맞게 회전할 지 여부를 설정합니다. 디폴트는 False입니다.
#16. rotatelabels : bool, default False
pie = plt.pie(incomes,explode=explodes,labels=labels,rotatelabels=True)
plt.title("set rotatelabels")
plt.show()
17. 전체 코드
#파이 챠트
#matplotlib.pyplot.pie(x,
# explode=None,
# labels=None,
# colors=None,
# autopct=None,
# pctdistance=0.6,
# shadow=False,
# labeldistance=1.1,
# startangle=None,
# radius=None,
# counterclock=True,
# wedgeprops=None,
# textprops=None,
# center=(0, 0),
# frame=False,
# rotatelabels=False)
import matplotlib.pyplot as plt
import matplotlib.patches as ptc
#1. x : array-like
incomes = [12, 34, 56, 78]
plt.pie(incomes)
plt.title("x")
plt.show()
#2. explode : array-like, default None
explodes =(0.1,0,0,0)
plt.pie(incomes,explode=explodes)
plt.title("set explode")
plt.show()
#3. set label : list, default None
labels = 'A', 'B', 'C', 'D'
plt.pie(incomes,explode=explodes,labels=labels)
plt.title("set labels")
plt.show()
#4. colors : array-like, default None
colors =["red","green","blue","violet"]
plt.pie(incomes,explode=explodes,labels=labels,colors=colors)
plt.title("set colors")
plt.show()
#5. autopct : string, default None
plt.pie(incomes,explode=explodes,labels=labels,autopct='%.2f')
plt.title("set autopct")
plt.show()
#6. pctdistance : float, default 0.6
plt.pie(incomes,explode=explodes,labels=labels,autopct='%.2f',pctdistance=0.8)
plt.title("set pctdistance")
plt.show()
#7. shadow : bool, default False
plt.pie(incomes,explode=explodes,labels=labels,shadow=True)
plt.title("set shadow")
plt.show()
#8. labeldistance : float default: 1.1
plt.pie(incomes,explode=explodes,labels=labels,labeldistance=1.5)
plt.title("set labeldistance")
plt.show()
#9. startangle : float default None
plt.pie(incomes,explode=explodes,labels=labels,startangle=90)
plt.title("set startangle")
plt.show()
#10. radius : float, default None
plt.pie(incomes,explode=explodes,labels=labels,radius=0.7)
plt.title("set radius")
plt.show()
# 11. counterclock : bool, default True
plt.pie(incomes,explode=explodes,labels=labels,counterclock=False)
plt.title("set counterclock")
plt.show()
#12. wedgeprops : dict, default None
wedgeprops=dict(edgecolor='black',linewidth=3,linestyle=':')
plt.pie(incomes,explode=explodes,labels=labels,wedgeprops=wedgeprops)
plt.title("set wedgeprops")
plt.show()
#13. textprops : dict, default None
textprops = dict(rotation=15,size=12, weight=3,color="red")
plt.pie(incomes,explode=explodes,labels=labels,textprops=textprops)
plt.title("set textprops")
plt.show()
#14. center : list of float, default (0,0)
#15. frame :bool , default False
plt.pie(incomes,explode=explodes,labels=labels,center=(0.5,0.5),frame=True,radius=0.5)
plt.title("set center and frame")
plt.show()
#16. rotatelabels : bool, default False
pie = plt.pie(incomes,explode=explodes,labels=labels,rotatelabels=True)
plt.title("set rotatelabels")
plt.show()
반응형
'Python > matplotlib' 카테고리의 다른 글
[python matplotlib] pyplot 주석 달기 - annotate (0) | 2020.11.23 |
---|---|
[python matplotlib] pyplot 막대그래프(bar, barh) (0) | 2020.11.20 |
[python matplotlib] pyplot.plot 호출 인자(입력 매개변수) (0) | 2020.11.20 |
[python matplotlib] pyplot 색상 지정 (0) | 2020.11.20 |
[python matplotlib] pyplot의 기본 기능 (0) | 2020.11.20 |