오도원입니다.

건강과 행복을 위하여

PNU DSC/파이썬 데이터 분석

02-1. 데이터 시각화 기초 1

오도원공육사 2020. 5. 5. 16:55
반응형

기본 그래프 그리기

1) matplotlib 라이브러리

파이썬으로 데이터를 시각화하는 데는 matplotlib 라이브러리를 가장 많이 사용한다. 그래프, 이미지, 등을 그릴 때 사용한다. 

 

matplotlib 라이브러리 안에는 다양한 모듈들이 있는 pyplot 이라는 모듈을 주로 사용할 것이다.

import matplotlib.pyplot

 

matplotlib.pyplot 이름이 너무 길고 복잡하므로 alias로 plt라는 이름을 사용하겠다.

import matplotlib.pyplot as plt

 

2) 기본 그래프 그리기

plot() 함수에 한 개의 리스트를 입력했다. plot() 함수는 직선 또는 꺾은선 그래프를 그릴 때 사용하는 명령어이다.

import matplotlib.pyplot as plt
plt.plot([10, 20, 30, 40]) # 해당 리스트는 y축값으로 입력된다.
plt.show()

입력한 리스트의 값이 y축 값으로 입력된다.

 

두번째 그래프를 그려보자. 두개의 리스트가 콤마(,)로 구분되어 입력된다.

plt.plot([1, 2, 3, 4], [10, 20, 30, 40]) # 첫번째는 x축값, 두번째는 y축값
plt.show()

 

plot 함수에 기본 그래프는 기본적으로 세 단계를 거친다.

  • 1. import matplotlib.pyplot as plt : 라이브러리 불러오기
  • 2. plt.plot([x축 데이터], [y축 데이터]) : plot() 함수에 데이터 입력하기
  • 3. plt.show() : 그래프 보여주기

3) 그래프에 옵션 추가하기

제목, 레이블과 같은 옵션을 추가하겠다.

 

1. 제목추가

제목을 넣을 때는 title() 함수를 사용한다.

plt.title('plotting') # 그래프에 제목 삽입
plt.plot([10, 20, 30, 40])
plt.show()

 

2. 범례 추가

그래프가 의미하는 바를 구별할 수 있도록 범례(legend)를 넣어보겠다. 범례는 보통 두 개 이상의 데이터를 표시할 때 사용한다.

 

범례를 넣을 때는 plot() 함수에 리스트를 넣을 때 label 이름을 지정해주고 legend() 함수를 실행하면 레이블 값이 범례로 나타난다.

plt.title('legend')
plt.plot([10, 20, 30, 40], label='asc') # 증가를 의미하는 asc 레이블
plt.plot([40, 30, 20, 10], label='desc')  # 감소를 의미하는 desc 레이블
plt.legend() # 레이블 값이 범례로 나타난다.
plt.show()

범례의 위치를 직점 지정할 수 있다.

plt.legend(loc=5)
2 9 1
6 10 5, 7
3 8 4

각 숫자에 따른 범례의 위치는 위와 같다.

 

3. 그래프 색상 변경

그래프 색상은 color 옵션을 추가하면 된다.

# 제목 설정
plt.title('color')

# 그래프 그리기
plt.plot([10, 20, 30, 40], color='skyblue', label='skyblue')
plt.plot([40, 30, 20, 10], 'pink', label='pink')

# 범례 표시
plt.legend()

# 그래프 출력
plt.show()

색상은 다음과 같이 약자로 표현할 수 있다.

r : red

g : green

b : blue

k : black (black은 blue와 구별하기 위해 k를 사용)

y : yellow

 

4. 그래프 선 모양 바꾸기

그래프 선 모양은 linestyle 옵션을 사용한다. ls로 줄여서 사용할 수 있다.

# 제목 설정
plt.title('linestyle')

# 빨간색 dashed 그래프
plt.plot([10, 20, 30, 40], color='r', linestyle='--', label='dashed')

# 초록색 dotted 그래프
plt.plot([40, 30, 20, 10], color='g', ls=':', label='dotted')

# 범례 표시
plt.legend()

# 그래프 출력
plt.show()

 

5. 마커 모양 바꾸기

marker 속성을 설정하면 선이 아닌 점 형태로 그래프를 그릴 수 있다. (.)은 점 모양의 마커, ^은 삼각형 모양의 마커를 의미한다.

# 제목 설정
plt.title('marker')

# 빨간색 원형 마커 그래프
plt.plot([10, 20, 30, 40], 'r.', label='circle')
# 초록색 삼각형 마커 그래프
plt.plot([40, 30, 20, 10], 'g^', label='triangle up')

# 범례 표시
plt.legend()

# 그래프 출력
plt.show()

 

색상, 선모양, 마커모양을 동시에 설정하고 싶을 때는 '<색상><마커모양><선모양>' 순으로 코드를 작성할 수 있다.

plt.plot([1, 2, 3, 4], 'r.--')

반응형