1. Matplotlib
Matplotlib은 데이터의 시각화와 평면 그래프 플롯으로 사용되는 파이썬 라이브러리입니다. Matplotlib를 이용하면 꺾은선, 막대 그래프, 히스토그램 등의 다양한 유형의 그래프를 표현할 수 있으며 데이터 곡선, 눈금, 범례, 그래프 제목과 같이 그래프를 라벨링할 수도 있습니다.
2. Pyplot 모듈
matplotlib.pyplot 모듈은 MATLAB과 유사하게 명령어 스타일로 동작하는 함수입니다. matplotlib.pyplot 모듈의 함수를 이용해 그래프를 만들 수 있습니다.
1) 그래프 그리기
matplotlib.pyplot 모듈의 plot() 함수 안에 숫자 리스트를 입력해 그래프를 그릴 수 있습니다. plot() 함수 안에 리스트를 하나만 넣을 경우에는 plot() 함수는 리스트의 값을 y값이라고 가정하고, 리스트 안 데이터의 개수만큼 스스로 x값 데이터 리스트 [0, 1, 2, 3...]을 만들어냅니다.
matplotlib.pyplot 모듈의 show() 함수는 그래프를 화면에 나타나도록 합니다.
Code
import matplotlib.pyplot as plt
plt.plot([0, 1, 2, 3])
plt.show()
만약 plot() 함수 안에 두 개의 리스트를 넣는다면, 첫 번째 리스트의 값은 x축 값으로, 두 번째 리스트의 값들은 y축 값으로 인식하여 x-y 그래프로 나타낼 수 있습니다.
Code
import matplotlib.pyplot as plt
plt.plot([0, 1, 2, 3, 4], [0, 1, 4, 9, 16])
plt.show()
[ConFer]
plot() 함수는 다양한 기능을 포함하고 있어, 임의의 개수의 인자를 받을 수 있습니다.
2) 스타일 지정하기
스타일 설정하기 형식
plt.plot([0, 1, 2, 3, 4], [0, 1, 4, 9, 16], 'ro')
plt.axis([xmin, xmax, ymin, ymax])
[ConFer]
위 코드에서 'ro'는 Format string을 의미합니다.
Code
import matplotlib.pyplot as plt
plt.plot([0, 1, 2, 3, 4], [0, 1, 4, 9, 16], 'ro')
plt.axis([0, 6, 0, 20])
plt.show()
[ConFer]
위 코드에서 'ro'는 Format string을 의미합니다. 포맷 문자열은 x, y 값 인자에 대해 선의 색상과 형태를 지정하는 값으로 세번 째 인자에 이 값을 추가하여 속성을 추가할 수 있습니다.
포맷 문자열 'ro'에서 'r'은 빨간색을, 'o'는 원형 점을 의미합니다.
이 외에도 'b-'에서 'b'는 파란색을, '-'은 실선을 의미합니다.
또한 matplotlib.pyplot 모듈의 axis() 함수를 이용해 축의 범위 [xmin, xmax, ymin, ymax]를 지정할 수 있습니다.
3) 동시에 여러 그래프 그리기
여러 그래프 그리기 형식
plt.plot(x, y1, 'r--', x, y2, 'bs', x, y3, 'g^')
Code
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(0, 5., 0.2)
plt.plot(x, x, 'r--', x, x**2, 'bs', x, x**3, 'g^')
plt.show()
Matplotlib에서는 일반적으로 NumPy 어레이를 사용합니다. 하지만 NumPy 어레이를 사용하지 않아도 모든 시퀀스는 내부에서는 NumPy 어레이로 변환되어 처리됩니다.
[ConFer]
위 코드에서 np.arange(0, 5, 0.2)는 0부터 5까지 0.2의 크기로 나누어진 값을 의미합니다. 또한 'r--'는 빨간색 대쉬 라인을, 'bs'은 파란 사각형을, 'g^'은 녹색 삼각형으로 위 값의 점을 나타냅니다.
'Engineering with Python' 카테고리의 다른 글
Scipy란? (0) | 2023.01.10 |
---|
댓글