본문 바로가기

Manual

파이썬, matplotlib을 이용한 선 그래프 그리기

목적_____

  • 파이썬을 이용하여 간단한 꺽은선그래프를 그린다.
  • 여러 데이타를 나타내는 선을 한 그래프에 표시한다.

 

결과_____

 

 

방법_____

_matplotlib 설치

matplotlib이 설치되어 있지 않으면

IDLE 등으로 python을 실행하고 아래 키를 눌러 나오는 창에

이미지 출처: http://www.edentall.com/kor/customer/archive.php?ptype=view&code=customer_archive&idx=5094

pip install matplotlib

라고 입력하여  matplotlib 설치한다.

 

_matplotlib 불러오기

import 명령어로 matplotlib를 불러오고, 간단히 plt로 부르기로 한다.

 

import matplotlib.pyplot as plt

 

_각 과목 성적 입력 하기(y축에 표시)

국어, 영어, 수학 성적의 월 변화를 그래프로 표시하려고 한다.

국어 성적은 KOR, 수학 성적은 MATH,  영어 성적은 ENG에  리스트로 만들어 차례대로 입력한다.

 

KOR = [55, 64, 61, 73, 65, 72]
MATH = [64, 62, 73, 86, 72, 77]
ENG = [74, 92, 93, 86, 82, 97]

 

_x축 값 입력

성적이 y축에 표시 될 것이므로, x축에는 1~6월이 표시 되게 하기 위해 1~6을 차례대로 릿트로 만들어 입력한다.

 

x_value = [1, 2, 3, 4, 5, 6]

 

_그래프 그리기

그래프를 그리는 명령어를 입력하고

 

fig, ax = plt.subplots()

 

그래프 이름, x축, y축의 이름을 아래 형식으로 입력한다.

ax.set_title('그래프 이름')  
ax.set_ylabel('y축 이름')    
ax.set_xlabel('x축 이름')     

 

ax.set_title('Monthly Records')   # 그래프 이름 
ax.set_ylabel('Score')            # y축 이름 
ax.set_xlabel('Month')            # x축 이름

 

국어, 영어, 성적을 차례로 불러와 각각 라벨을 붙여 다른 색으로 그리게 한다.

 

ax.plot(x_value, KOR, label="KOR")
ax.plot(x_value, MATH, label="MATH")
ax.plot(x_value, ENG, label="ENG")

 

_그래프를 화면에 출력

plt.show()

 

__전체 code

import matplotlib.pyplot as plt

# 표시할 데이타 
KOR = [55, 64, 61, 73, 65, 72]
MATH = [64, 62, 73, 86, 72, 77]
ENG = [74, 92, 93, 86, 82, 97]

# x축 값 
x_value = [1, 2, 3, 4, 5, 6]

# 그래프 그리기 
fig, ax = plt.subplots()

ax.set_title('Monthly Records')   # 그래프 이름 
ax.set_ylabel('Score')            # y축 이름 
ax.set_xlabel('Month')            # x축 이름 

ax.plot(x_value, KOR, label="KOR")
ax.plot(x_value, MATH, label="MATH")
ax.plot(x_value, ENG, label="ENG")

ax.legend()     # 범례 표시

plt.show()

 

결과_____

결과1

 

plt.scatter(x_value, KOR)
plt.scatter(x_value, MATH)

를 추가하면, 그래프에 점이 표현되어 보기 좋다.

 

결과2

최종 code

import matplotlib.pyplot as plt

# 표시할 데이타 
KOR = [55, 64, 61, 73, 65, 72]
MATH = [64, 62, 73, 86, 72, 77]
ENG = [74, 92, 93, 86, 82, 97]

# x축 값 
x_value = [1, 2, 3, 4, 5, 6]

# 그래프 그리기 
fig, ax = plt.subplots()

ax.set_title('Monthly Records')   # 그래프 이름 
ax.set_ylabel('Score')            # y축 이름 
ax.set_xlabel('Month')            # x축 이름 

ax.plot(x_value, KOR, label="KOR")
plt.scatter(x_value, KOR)         # 그래프에 데이타 위치 표시
ax.plot(x_value, MATH, label="MATH")
plt.scatter(x_value, MATH)        # 그래프에 데이타 위치 표시
ax.plot(x_value, ENG, label="ENG")

ax.legend()

plt.show()

 

 

 

728x90