[파이썬] 데이터시각화(2) (seaborn 패키지)
2020. 4. 22. 10:10ㆍ노트/Python : 프로그래밍
데이터 형태에 따른 시각화 함수 적용방법
- 1차원데이터: 실수값, 실수분포 플롯
(커널밀도, 러그, rugplot, kdeplot, distplot)
countplot: 카테고리별 데이터가 얼마나 있는지 나타낼 때 사용 - 다차원데이터: 데이터변수가 여러개
- 2차원, 실수형 데이터 : 스캐터플롯 (jointplot)
(만약 카테고리형 데이터가 포함되어 있다면 hue 속성을 지정) - 2차원 카테고리형 데이터 : heatmap(열지도) 사용
- 2차원 실수값, 카테고리형 데이터가 섞여 있음 :
bar, box, point, violin, swarm plot 이용 - 3차원이상의 실수형데이터 : pairplot (그리드형태로 출력)
- 2차원, 실수형 데이터 : 스캐터플롯 (jointplot)
데이터
import seaborn as sns
tips = sns.load_dataset("tips")
tips
# regplot 함수 : 회귀직선, 회귀 점 표시
%matplotlib notebook
import matplotlib.pyplot as plt
# regplot 함수 : 회귀직선, 회귀 점 표시
ax = plt.subplots() # 도화지 세팅
ax= sns.regplot(x="total_bill",y="tip",data=tips,fit_reg=False) # 회귀선 점으로 시각화하는지
ax.set_title("Total bill and Tip")
# jointplot함수: 결합결과를 표시
# jointplot함수: 결합결과를 표시
# kind="hex"속성: 표시 종류를 점이 아닌 6각형 색표시로 나타냄
sns.jointplot(x="total_bill", y="tip",data=tips)
sns.jointplot(x="total_bill", y="tip",data=tips, kind="hex")
# kdeplot함수: 2차원의 밀집도 그래프 : 등고선
# shade = True :그림자 표시 속성
# kdeplot함수: 2차원의 밀집도 그래프 : 등고선
kde, ax = plt.subplots() # 도화지 생성
ax=sns.kdeplot(data=tips['total_bill'],data2=tips['tip'])
ax=sns.kdeplot(data=tips['total_bill'],data2=tips['tip'], shade=True)
#shade = True :그림자 표시 속성
# barplot함수 : 막대그래프 표시
# barplot함수 : 막대그래프 표시
ax=plt.subplots()
ax=sns.barplot(x="time",y="total_bill",data=tips)
# boxplot함수 :박스그래프 표시
orient="v" 속성: 박스 수직으로 표시
boxplot 해석:
Outlier, Maximum, 3rd Quartile, Median , 1st Quartile , Minimum
ax2=plt.subplots()
ax2=sns.boxplot(x="day",y="total_bill",data=tips, orient="v")
ax3=plt.subplots()
ax3=sns.boxplot(x="day",y="total_bill",data=tips, hue="smoker",palette="Set3",orient="v")
#Swarmplot 함수: 데이터 점으로 표시
ax4=plt.subplots()
ax4=sns.boxplot(x="day",y="total_bill",data=tips, hue="smoker",palette="Set3",orient="v")
#Swarmplot 함수: 데이터 점으로 표시
ax4=sns.swarmplot(x="day",y="total_bill",data=tips)
# violinplot 함수: 데이터 밀집도 표시
# violinplot 함수: 데이터 밀집도 표시
ax5=plt.subplots()
sns.violinplot(x='time', y="total_bill", data=tips)
# Pariplot 함수: 관계그래프 표시
# Pariplot 함수: 관계그래프 표시
sns.pairplot(tips)
pg=sns.PairGrid(tips) # 도화지생성
pg.map_upper(sns.regplot) # 회귀 점 및 선 표시
pg.map_lower(sns.kdeplot) # 커널 밀도 표시
pg.map_diag(sns.distplot, rug=True)# 거리를 점으로 표시
'노트 > Python : 프로그래밍' 카테고리의 다른 글
[케라스/텐서플로우] 주택가격 예측하기 코드 (0) | 2020.04.23 |
---|---|
[케라스] 영화리뷰 긍정부정 분류하기 (0) | 2020.04.22 |
[신경망] 선형회귀로 분류가 불가능한 경우(XOR problem) (0) | 2020.04.21 |
[텐서플로우/케라스] MNIST 숫자 분류하기 (softmax) (0) | 2020.04.21 |
[텐서플로우] 소프트맥스 회귀 (Softmax Regression) 분류 파이썬 코드 (0) | 2020.04.20 |