본문 바로가기
Pandas

[Pandas] Numpy - matplotlib, seaborn를 이용한 자료 시각화

by moveho 2022. 11. 1.

lineplot

# plt
x = np.array([1, 2, 3, 4, 5, 6])
y = np.array([1, 2, 3, 4, 5, 6])

#title. x label, y label, 범례
plt.plot(x,y, 'ms--',label='low')       #스타일은 색깔, 마커, 선종류 순서로 지정
plt.plot(x,y*2, label = 'high')
plt.legend()
plt.title("test")
plt.xlabel("xlabel")
plt.ylabel("ylabel")
plt.show()   #그래프만 보여줌

 

우리가 알고 있는 그 선 그래프이다.

코드는 위와 같이 들어가며 스타일은 색깔, 마커, 선종류 순서로 지정된다.

 

 

 

 

histogram

plt.hist(iris['sepal_width'])   #default bins =10
plt.show()

 

  • 히스토그램은 연속형 변수의 값 또는 분포 형태를 보여준다
  • 데이터 집합의 중심, 산포 및 형태를 볼 수 있음.
  • 정규성을 확인하기 위한 시각적인 도구로도 활용

 

 

 

scatterplot

sns.scatterplot('petal_length','petal_width', hue = 'species', data = iris)       #(x, y, hue, data 소스)
plt.show()
plt.savefig("aaa.pdf")

 

 

  • 두 연속형 변수들 사이의 상관관계
  • 산점도는 상관관계의 형식, 방향, 크기와 더불어 이상치의 존재 여부를 확인할 수 있디

 

 

 

 

irisdf = iris.drop('species', axis = 1)
irisdf.corr() #상관계수 -1 < 상관계수 < 1 으로 나타냄
#기호 : 양의 관계, 음의 관계를 나타냄
#절대값 : 1에 가까울 수록 강한 상관관계를 갖는다
#상관계수 1 = 모든 x,y 값이 한 선에 존재
#상관계수 0 = 상관 전혀 없음
#상관계수 0.5 = 상관이 있다.

 

1에 가까울 수록 강한 상관관계를 갖는다.

 

 

regplot

sns.regplot('petal_length','petal_width', data = iris, scatter_kws ={'color' : 'red'})
plt.show()

 

 

 

 

 

 

 

 

 

jointplot

sns.jointplot('petal_length', 'petal_width', data = iris)

 

 

 

 

 

  • 두 개의 수치형 변수간의 관계
  • 차트의 중앙에 상관 관계 그래프 사용 ( 산점도, 헥스 빈 플롯, 히스토그램, kde)
  • 그래프 상단과 오른쪽에 두 변수의 분포를 보여줌

 

 

 

 

 

 

pairplot

sns.pairplot(iris)

  • 만약 3차원 이상의 데이터라면 seaborn 패키지의 pairplot 명령을 사용
  • pairplot은 데이터프레임을 인수로 받아 그리드(grid) 형태로 각 데이터 열의 조합에 대해 scatterplot을 그림
  • 같은 데이터가 만나는 대각선 영역에는 해당 데이터의 히스토그램을 그림

 

boxplot

plt.boxplot(iris.petal_length)
plt.show()

 

 

  • 박스-휘스커 플롯(Box-Whisker Plot) 혹은 간단히 박스 플롯이라 부르는 차트를 그려줌
  • 박스 플롯은 박스와 박스 바깥의 선(whisker)으로 이루어짐

 

 

 

이와같이

matplotlib, seaborn를 이용한 데이터 시각화에 대해서 알아보았다!

 

 

댓글