본문 바로가기
Python/Matplotlib

Matplotlib - Pie 차트(원 형 그래프) .autopct startangle wedgeprops = { 'width' : }

by 하니__ 2024. 4. 9.

 

보통 데이터를 퍼센테이지로 시각화 하는경우 많이 사용 (ex: 대통령 선거 득표율)

 

 

 

포켓몬 세대별 포켓몬 객체수를 pie차트를 이용하여 나타내보자

 

 

 
df['generation_id'].value_counts()
 
generation_id
5    156
1    151
3    135
4    107
2    100
7     86
6     72
Name: count, dtype: int64
 
df2 = df['generation_id'].value_counts()
 
plt.pie(df2)
plt.show()

 

우선은 원하는 데이터프레임을 가공하여 저장하고

기본형인 .pie( )로 파라미터 안에 넣어 불러내자

 

 

나오긴 나왔는데 도대체 무슨 데이터인지

무엇을 나타내는지 알 수가 없다

가공을 시작 하자

 

 

 
plt.pie(df2, labels= df2.index, autopct='%.1f')
plt.show()
 
 
우선은 labels 로 데이터프레임의 인덱스를,
그리고 autopct로 퍼센테이지를 표시하는데
%.1f는 소수점 1자리까지 표시하고 뒷부분은 반올림 하는것을 의미한다

 

 
 
plt.pie(df2, labels= df2.index, autopct='%.3f')
plt.show()

 

마찬가지로 %.1f는 소수점 3자리 되겠다

 

 
plt.pie(df2, labels= df2.index, autopct='%.0f')
plt.show()

 

%.0f 로 표시하면 소수점없이 정수로 반올림한다

 

 

 
plt.pie(df2, labels= df2.index, autopct='%.0f', startangle=90)
plt.show()

 

 

 

startangle을 지정하면 시작하는 각도를 지정할 수 있다

기본값은 0도 원을 +로 나누었을때 우측상단부터 시작한다

 
plt.pie(df2, labels= df2.index, autopct='%.0f', startangle=90, wedgeprops={'width': 0.7})
plt.show()

 

wedgeprops = { 'width' :  } 으로

 

원 가운데에 구멍을 뚫어 도넛 모양으로 만들어준다

 

숫자는 0부터 1까지의 숫자가 가능하며

보통 0.7 정도가 보기 좋다

 

 

 
plt.pie(df2, labels= df2.index, autopct='%.0f', startangle=90, wedgeprops={'width': 0.7})
plt.title('Genaration Id Pie Chart')
plt.show()

 

title( ) 을 적어주면 그래프의 제목을 지정할 수 있다

 

 

 

 
plt.pie(df2, labels= df2.index, autopct='%.0f', startangle=90, wedgeprops={'width': 0.7})
plt.title('Genaration Id Pie Chart')
plt.legend()
plt.show()

 

legend() 를 입력하면 색상별 인덱스를 알려준다