파이썬(Python)

파이썬(python) 데이터 시각화 라이브러리 : matplotlib 여러 그래프 그려보기

알통몬_ 2018. 1. 23. 10:44
반응형


공감 및 댓글은 포스팅 하는데

 아주아주 큰 힘이 됩니다!!

포스팅 내용이 찾아주신 분들께 

도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 

만들어 나가겠습니다^^

 


이번 포스팅에서는 지난 포스팅에서 공부한 matplotlib의 여러 그래프를 그려보는 실습을

하겠습니다.

먼저 matplotlib 매직 명령어와 필요한 두 라이브러리를 추가해주고요.

In[2] : 비어있는 피겨를 생성하는데요.

figure 는 하나의 그림 단위라고 생각하시면 됩니다. figure 안에 1개 이상의 plot을

그리고 관리할 수 있도록 하고, figure 안에 들어가는 plot 하나를 subplot 이라고 부릅니다.

In[3] : 비어 있는 figure 안에 하나의 subplot 를 생성합니다.

add_subplot() 함수를 사용하고, 앞에 두 인자는 figure를 몇 곱하기 몇으로 나눌지

설정하는 인자이고, 마지막 인자는 subplot이 들어가 위치입니다.


[ 광고 보고 가시죠! ]



[ 감사합니다! ]




총 4개의 subplot 만들 수 있는 figure 에 3개의 figure를 만들었습니다.

그리고 numpy 와 pandas를 import 하고 50개의 임의의 값을 생성하고, 

plot을 만들었는데요. In[6]을 보면 어느 subplot에 그래프를 그릴지 설정하지 않았습니다.

이런 경우에는 가장 마지막에 만든 subplot부터 그래프가 그려집니다.

In[7] : 원하는 subplot에 그래프를 그리고 싶을 경우 변수에 직접 그리면 됩니다.


이번에는 2행 3열 짜리 figure를 만들고, 해당 배열을 axes라는 변수에 넣었습니다.

Out[8]을 보면 2 x 3 짜리 배열이 생겼고, 각 subplot의 주소값들이 axes 의 각 요소에

들어간 것을 볼 수 있습니다.


이번에는 그래프의 색, marker 모양, 각 점을 잇는 라인의 스타일을 같이 지정해서

그래프를 그렸습니다.

자주 사용되는 값들을 먼저 소개합니다.

그래프 색상 :

 "b"

 blue 

 "g" 

 green 

 "r" 

 red 

 "c" 

 cyan 

 "m" 

 magenta 

 "y" 

 yellow 

 "k" 

 black 

 "w" 

 white 

마커 모양 :

 "."

 point 

 "," 

 pixel 

 "o" 

 circle 

 "v" 

 triangle_down 

 "^" 

 triangle_up 

 "<" 

 triangle_left 

 ">" 

 triangle_right 

 "8" 

 octagon 

 "s" 

 square 

 "p" 

 pentagon 

 "*" 

 star 

 "h" 

 hexagon 

 "+" 

 plus 

 "x" 

 x 

라인 스타일 :

 "-"

 solid line 

 "--" 

 dashed line 

 "-." 

 dash-dotted line 

 ":" 

 dotted line 

 "None" 

 draw nothing

아래처럼 한번에 색상, 모양, 라인스타일을 전부 설정할 수 있습니다.

k.- : 검은색에 각 점들은 포인트로, 라인 스타일은 솔리드 라인


바 차트나 산점도의 경우는 색상과 투명도를 설정할 수 있어요.

2 x 1 짜리 figure를 만들고 axes 에 해당 배열을 넣었습니다.

그리고 16개의 요소를 가지는 시리즈를 만들고 바 차트를 그렸습니다.


다시 하나의 빈 figure를 만들고, 하나의 subplot을 가지도록 만들었습니다.

요소가 1000개인 plot을 그렸습니다.

set_xticks 또는 set_yticks 함수를 이용해서, x축 또는 y축에 기준이 되는 값들을 

변경할 수 있습니다.

그리고 꼭 숫자가 아니라 문자열로도 변경할 수 있고, 약간의 회전도 줄 수 있습니다.


set_title 함수로 그래프의 제목도 줄 수 있구요.


xlabel, ylabel 함수로 각 축의 레이블도 달아줄 수 있습니다.


하나의 그래프에 3개의 plot을 그렸는데요.

아무 표시가 없어서 뭐가 뭔지 알 수가 없죠?

이런 경우 legend 함수를 이용해서

아래 그래프처럼 각 그래프가 어떤 걸 가리키는지 알 수 있습니다.


또한 set_xlim 함수로 그래프의 범위를 변경해서 원하는 범위만 확인할 수도 있습니다.

각 요소들의 범위보다 set_xlim 함수로 변경한 범위가 좁을 경우 범위를 넘어서는 값들은

자연스럽게 잘립니다.


이상입니다.

다음 포스팅에서는 matplotlib가 아닌 데이터 시각화 라이브러리 3개를 소개하는 포스팅을

하려고 합니다.

감사합니다.

반응형