Python으로 시각화하기 - Matplotlib

Henry Lee·2020년 12월 19일
0
post-thumbnail
import matplotlib.pyplot as plt

%matplotlib inline #inline에 그래프 리턴. default에 따라 불필요.

사용 예

import numpy as np

x = np.arange(1,6)
y = x ** 2

plt.plot(x) #Array x를 이용한 그래프 선(plot)을 설정
plt.show() #Fig, Ax, Plot을 그린 그래프를 리턴(그리기)

plt.figue(figsize(3,3)) #Fig의 사이즈를 3,3으로 조정
plt.plot(x,y) #Array x, y를 이용한 그래프 선(plot)을 설정
plt.show()

plt.xlabel("x value") #x축 라벨을 설정
plt.ylabel("f(x) value") #y축 라벨을 설정

plt.axis([x_min, x_max, y_min, y_max]) #x,y축 조정

plt.xticks([i for i in range(-5, 6)]) #x축 좌표들을 설정
plt.yticks([i for i in range(-5, 6)]) #y축 좌표들을 설정

plt.title("f(x) = x^2 graph")

plt.plot(x,y, label="trend") #그래프의 라벨 같이 설정. 범례 표시하면 그래프에 나타난다.
plt.legend() #범례를 그래프상 표시
plt.show()

종류

# 꺽은 선 그래프
plt.plot(x,y)

# 산점도
plt.scatter(x,y)

# 박스그림
plt.boxplot(y)

# 막대그래프
plt.bar(x,y)

# 히스토그램
plt.hist(y, bins=[]) #bins는 x축 간격으로 들어갈 리스트

# 원형
plt.pie(z, labels=[]) #labels는 z각 원소의 라벨 len(z)=len(labels) 이어야 할듯.

Seaborn

import seaborn as sns

# 커널밀도
sns.kdeplot(y, shade=True)

# 카운트그림
sns.countplot(x=df.series)

# 캣그림
sns.catplot(x=series, y=series, data=df)

# 스트립그림
sns.stripplot(x=series, y=series, data=df)

# 스웜플롯
sns.swarmplot(x=series, y=series, data=df)

# 히트맵
sns.heatmap(df.corr())

데이터 시각화에 어떤 형태/종류가 적절한지, 그리고 결정된 형태/종류에 맞춰 어떻게 data를 준비(pre-setting)해놓을지에 대한 Idea를 가져가자.

profile
Today I Learned. AI Engineer.

0개의 댓글