데이터를 분석하기에 앞서, 데이터를 시각화해서 보는 것은 데이터를 이해하는데 필수적인 요소라고 생각합니다.
이번 포스팅에서는 파이썬 기반 시각화 라이브러리인 matplotlib에 대해서 알아보도록 하겠습니다.
matplotlib은 다양한 데이터를 많은 방법으로 그래프를 만들고 변화를 줄 수 있도록 하는 파이썬 라이브러리입니다.
matplotlib을 사용하기 위해서는 먼저 아래와 같이 matplotlib을 설치하고 import를 해주어야 합니다.
- matplotlib 환경 설정
File → setting → matplotlib install을 해주면 준비 완료!
- import matplotlib 하는 3가지 방법
- plot 의 종류
- Graph title
- Data List
-
Plot 인수값 plt.plot( [y 축], [x 축] )
** 주의 **
인수값이 맞지 않을 경우 >> ValueError: x and y must have same first dimension, but have shapes (5,) and (4,)
인수값의 차원은 맞춰주어야 한다.
-
Graph grid
격자의 순서는 show()에서 적용되기 때문에 show() 입력 전엔 꼭 적어야 한다
plt.grid() 의 default 값은 false입니다. 그러므로, True값은 꼭 입력해 주어야 한다.
- x label y label 지정하기
-
range를 사용한 인수값
range 를 가용하여 시작과 끝 값을 설정할 수 있지만, 인수 길이는 같도록 주의해야 합니다.
-
Line colour
- Graph range with Line colour
-
Graph tick mark
위와 같은 tick mark를 사용할때는 .- 혹은 - v- 와같이 뒤에 '-'를 붙여사용 합니다.
., ov^<> w1234 sp*hH+xDd로 예시를 봅시다.
- Graph Line Style
-
Graph line detail Style
선 색깔 굵기 스타일, 마커 종류 크기, 마커 선 색 굵기, 마커 내부 색을 바꿀 수도 있습니다.
-
Graph x/y 축 유효 범위
plt. x/y lim(start, end)을 사용하여 x축과 y축의 값을 지정할 수 있습니다.
- x / y ticks ( x, y의 눈금자 표시 범위 )
-
x / y ticks with rotation
길이가 긴 범례의 경우, tick 값의 각도를 회전시키면 더욱 보기가 좋습니다.
-
인수값, 범례의 label 명과 legend 위치 지정하기
위의 범례의 위치에 따른 값을 사용하여 데이터에 맞도록 설정할 수 있습니다.
-
배경 색상
colour : 0-255까지 사용 가능합니다. 각 색상당 (명도를 나타냄)- # 10진수 255를 이용 / 16 진수를 이용 / 비례 값 ex) 0.0(0) - 1.0(255)
-
출력 그래프 (Window) 창 크기 조절
figure ( figsize= )를 이용하여 표가 나타나는 window 창의 크기를 조절할 수 있습니다.
-
plot 그래프를 여러 개 나타내는 것
subplot ( plot 가로 값, 세로 값, 창 순번의 위치 값 )- 단, 그래프가 겹쳐지지 않게끔 조절해주어야 합니다.
-
y 축 2개 사용 (나이에 따른 age와 height)
twinx()를 사용하여 y축의 값을 추가할 수 있습니다.
-
Capture 결괏값을 저장할 때 그림파일로 바로 저장하기
gcf() 를 통해 Figure 객체를 얻어 사용합니다. (변수값부터 얻어 사용)
그다음, fig.savefig('파일명')으로 파일을 저장합니다.
- Bar chart ( bar )
- Horizontal Bar chart ( barh )
-
align = 'center' / 'edge'
차트의 축(=눈금선) 위치를 가운데 또는 끝에 맞출 수 있습니다.
- Bar 차트 속성
ctrl+b를 통해 bar의 default 값을 알 수 있습니다.
또는, 오른쪽 마우스+GO to..+declaration or usages
확인해보면, 아래와 같은 순서로 default값들이 나열되므로, 원하는 값으로 맞춰서 사용하면 간략하고 쉽게 나타낼 수 있습니다.
# x, height, width = 0.8, bottom = None(기준값의 밑바닥), *, align = 'center' 속성 사용, data = None, ** kwargs 가변 인수 값 처리):
# alpha = 막대 색깔과 배경과 섞이는 정도를 의미합니다. <- alpha blending
지금까지 간단하게 matplotlib를 이용하여 기본 그래프를 그리는 방법에 대해서 알아보았습니다.
모든 코드를 외우려 하지 말고 표현하고자 하는 의미를 알아두고 응용부터 시작해 봅시다.
위의 모든 default값을 외우고 있는 사람은 거의 없고 다들 한마음 한뜻으로 찾아본다고 조심스럽게 생각합니다.
저는 외우지 못해서 기록하기 위한 Yuja_smoothie의 노트였습니다~!
'Programming > Python' 카테고리의 다른 글
[Python] Seaborn을 활용한 시각화 (+예제) (0) | 2021.04.05 |
---|---|
[Python] Matplotlib를 활용한 데이터 시각화 (0) | 2021.02.19 |
[Python] 두개 이상의 데이터 프레임 병합 - concat 이용하기 (0) | 2021.02.18 |
[Python] Pandas DataFrame #pandas 기초 .01 (DataFrame 생성, 정제 및 준비, 삭제, Data 내보내기) (1) | 2021.02.04 |