[33일차]matplotlib plot의 종류 - Piechart, heatmap

김준석·2024년 1월 11일
0

Piechart - 원 그래프 plt.pie(sizes,lables=,explode=)

plt.pie() 를 이용해 위의 원 그래프를 만들어보자

  • plt.pie() 인자값
    • explode= : 파이에서 툭 튀어져 나온 비율(위에서 삼성과 같이)
    • autopct= 퍼센트 표기
      • ‘%.1f%%’ : 소수점 1자리까지 표기
    • shadow : 그림자 표시
    • startangle : 파이를 그리기 시작할 각도
    • texts, autotexts 인자를 리턴받는다.
      • txets는 label에 대한 텍스트 효과를
      • autotexts는 파이 위에 그려지는 텍스트 효과를 다룰때 사용
sizes = [20.4, 15.8, 10.5, 9, 7.6, 36.7]
labels = ['Samsung','Huawei','Apple','Xiaomi','Oppo','Etc']
explode = (0.3,0,0,0,0,0)

plt.pie(sizes, explode=explode, labels=labels )

위와 같이

size= 값을 넣어주고

labels= 레이블들을 넣어주고

explode= Samsung 파이를 0.3만큼 띄어주었다.

하지만 너무 밋밋하다..!

숫자를 표기해주고, 그림자를 넣은 뒤, 앵글을 90도 변경하자

plt.pie(
	sizes, explode=explode, labels=labels,
	autopct='%.1f%%',shadow=True,startangle=90 
)

여기서 텍스트 스타일을 적용하면 됨!

나는 에러가 떠서 못했다..ㅜㅠ

Heatmap - 히트맵(열분포형태)

히트맵이란?

다양한 값을 갖는 숫자 데이터를 열분포 형태와 같이 색상을 이용해서 시각화한것

예시) 지도위에 히트맵을 이용해 색상이 진한곳은 인구 분포가 많도록 만듦
이처럼 빈도 분포를 보여줄때 적합하다.

import matplotlib.pyplot as plt
import numpy as np

#히트맵 데이터
arr = np.random.standard_normal((30,40))

# 히트맵 생성
plt.matshow(arr)

#색상 바 생성
plt.colorbar(shrink=0.8, aspect=10) #shrink= 크기조절 ,aspect= 가로세로 비율

데이터는 아래의 코드로 만들어줬다.

np.random.standard_normal((30,40))

standard_normal : 정규 분포를 2차원의 형태로 랜덤하게 만들어주는 메소드

camp= 인자를 사용하여 히트맵의 색도 변경 가능하다.

# 히트맵 생성
import matplotlib.pyplot as plt
import numpy as np

arr = np.random.standard_normal((30,40))

#색상 바 생성
plt.matshow(arr,cmap='BuGn')
plt.colorbar(shrink=0.8, aspect=10) #shrink= 크기조절 ,aspect= 가로세로 비율

색상은 여러 종류가 있으니 나중에 확인해보면 좋을듯!

0개의 댓글