반응형
SMALL
오늘도 파이썬(Python) 학습을 진행하겠습니다
바로 맷플롯립(Matplotlib) 라이브러리(Library)의 기능과 스타일을 확장한 씨본(Seaborn) 라이브러리(Library)입니다
# 판다스(Pandas)
import pandas
import matplotlib.pyplot as mp
import matplotlib
# 씨본(Seaborn)
import seaborn
titanic_data = seaborn.load_dataset('titanic')
# titanic_data = titanic_data.fillna(method = 'ffill')
print(titanic_data.head(), end = '\n')
print(titanic_data.info(), end = '\n')
matplotlib.rc('font', family = 'AppleGothic') # MAC OS 일 경우 한글 폰트 오류 해결
# 스타일 테마(darkgrid, whitegrid, dark, white, ticks)
seaborn.set_style('ticks')
fig = mp.figure(figsize = (10, 10))
ax1 = fig.add_subplot(3, 2, 1)
ax2 = fig.add_subplot(3, 2, 2)
ax3 = fig.add_subplot(3, 2, 3)
ax4 = fig.add_subplot(3, 2, 4)
ax5 = fig.add_subplot(3, 2, 5)
ax6 = fig.add_subplot(3, 2, 6)
# 히스토그램/커널 밀도 그래프
seaborn.distplot(titanic_data['fare'], # Column
hist = True, # 히스토그램
kde = True, # 커널 밀도 그래프
ax = ax1) # ax객체 지정
# 히트맵(heatmap) : 피벗테이블(pivot table)로 범주형 컬럼을 매트릭스형태(행, 열)로 재구분하여야함
pivot_table = titanic_data.pivot_table(index = ['sex'],
columns = ['class'],
aggfunc = 'size') # 데이터 값의 크기 기준으로 집계
seaborn.heatmap(pivot_table, # data
annot = True, # 값 표시
fmt = 'd', # 정수형 포맷
cmap = 'viridis',
linewidth =.5, # 구분선
cbar = True, # 컬러바 표시여부
ax = ax2)
# 막대그래프
seaborn.barplot(x = 'sex', # x축
y = 'survived', # y축
data = titanic_data, # data
hue = 'class', # class 열 구분
dodge = False, # 누적
ax = ax3)
# 선형회귀분석에 의한 선형회귀선을 (미)표시 하는 산점도
seaborn.regplot(x = 'age', # x축
y = 'fare', # y축
data = titanic_data, # data
ax = ax4, # ax객체 지정
fit_reg = True) # 선형회귀선 표시 : False면 미표시
# 범주형 컬럼 데이터 산점도 :
# stripplot : 데이터 분산 미고려하여 중복 포인터 발생
# swarmplot : 데이터 분산 고려하여 포인터 중복 제거
seaborn.stripplot(x = 'class', # x축
y = 'age', # y축
data = titanic_data, # data
hue = 'sex', # sex 열 색상 구분
ax = ax5)
seaborn.swarmplot(x = 'class', # x축
y = 'age', # y축
data = titanic_data, # data
hue = 'sex',
ax = ax6)
mp.show()
위의 코드는 씨본(Seaborn) 라이브러리(Library)에서 제공하는 "titanic" 데이터를 이용해서
히스토그램/커널 밀도 그래프, 히트맵, 막대그래프, 선형회귀선을 포함하는 산점도, 범주형 데이터의 산점도를 그리고 있습니다
오늘은 여기까지 하고 다음에 빈도 그래프, 박스 플롯/바이올린 그래프, 조인트 그래프에 대해 알아보겠습니다-_-
반응형
LIST
'Python' 카테고리의 다른 글
[Python] 폴리엄(Folium) 라이브러리(Library) (0) | 2019.09.30 |
---|---|
[Python] 씨본(Seaborn) 라이브러리(Library)_2 (0) | 2019.09.30 |
[Python] 맷플롯립(Matplotlib) 라이브러리(Library)_3 (0) | 2019.09.25 |
[Python] 맷플롯립(Matplotlib) 라이브러리(Library)_2 (0) | 2019.09.23 |
[Python] 맷플롯립(Matplotlib) 라이브러리(Library)_1 (0) | 2019.09.21 |