저번 포스팅에 이어 이번 포스팅에서는
matplotlib (plt) 라이브러리 내에서 x축과 y축의 범위를 설정할 수 있는 함수들의 사용법을
간단하게 알아보겠습니다.
plt 축 범위 설정 함수 1 - xlim, ylim
축의 범위가 변경된 경우 그래프의 변화를 쉽게 알 수 있도록
삼차 함수 1개를 임의로 그려보도록 하겠습니다. 코드는 다음과 같습니다.
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(-3, 10, 0.01)
y = x ** 3 - 10 * x ** 2 + 6 * x + 100
plt.plot(x, y)
plt.show()
$$ y = x^3 - 10x^2 + 6x + 100$$
이라는 함수를 x축의 범위를 -3 ~ 10으로 두고그린 예시입니다.
삼차 함수가 잘 그려져 있고 극대, 극소점도 어느정도 뚜렷하게 확인되는 듯 합니다.
이제 x축의 범위가 0 ~ 7까지인 부분만 확대해서 보고 싶습니다.
다음과 같이 코드 한 줄만 추가해주시면 매우 간단하게 됩니다!
x = np.arange(-3, 10, 0.01)
y = x ** 3 - 10 * x ** 2 + 6 * x + 100
plt.plot(x, y)
plt.xlim(0, 7) # x축 범위 0~7로 지정
plt.show()
x축의 범위가 0~7인 부분만 확대가 된 것이 보이시나요?
x축의 양 끝에 0과 7의 눈금이 명확하게 확인되는 것을 보니 축 범위 지정이 잘 된 듯합니다.
이번에는 x축의 범위를 전체로 두고 y축의 범위를 0 ~ 100인 부분으로 제한해보겠습니다.
x = np.arange(-3, 10, 0.01)
y = x ** 3 - 10 * x ** 2 + 6 * x + 100
plt.plot(x, y)
plt.ylim(0, 100) # y축 범위 0 ~ 100으로 지정
plt.show()
이번에도 코드 한 줄 추가로 매우 간단하게 y축의 범위가 지정된 것을 확인해보실 수 있습니다!
물론, 필요하시다면 xlim 함수와 ylim 함수를 동시에 사용하셔도 좋습니다!
plt 축 범위 설정 함수 2 - axis
이번에는 축의 범위를 다룰 수 있는 또다른 함수인 axis 함수에 대해서 간단하게 다루어보겠습니다.
axis 함수로 축의 범위를 지정하는 방법은
[xmin, xmax, ymin, ymax] 순서로 4개의 인자를 리스트 등의 자료형에 묶어서 넣어주면 됩니다.
x축의 범위를 0 ~ 7, y축의 범위를 0 ~ 100으로 두고 함수를 다음과 같이 적용시켜보겠습니다!
x = np.arange(-3, 10, 0.01)
y = x ** 3 - 10 * x ** 2 + 6 * x + 100
plt.plot(x, y)
plt.axis([0, 7, 0, 100]) # x축의 범위 0 ~ 7, y축의 범위 0 ~ 100 지정
plt.show()
이번에도 함수의 축이 잘 지정된 것을 보실 수 있습니다.
axis 함수에는 여러 인자를 넣어 축에 관한 다양한 기능을 적용해보실 수도 있는데요.
예를 들어 plt.axis('off') 처럼 지정해주시면 축을 지울 수도 있습니다.
x = np.arange(-3, 10, 0.01)
y = x ** 3 - 10 * x ** 2 + 6 * x + 100
plt.plot(x, y)
plt.axis('off') # 축 지우기
plt.show()
x축과 y축이 말끔히 지워진 상태를 확인하실 수 있습니다!
이 plt의 axis 함수는 자동 축 범위나 x축과 y축의 scale 동일화 등 다른 기능들도 제공하고 있습니다.
해당 함수의 세부적인 다양한 기능을 확인해보고 싶으시다면 다음 링크의 공식 document를 참고해주시면 됩니다.
https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.axis.html
다음 포스팅에서는 축의 제목 및 차트의 제목을 지정하는 방법을 말씀드리겠습니다.
'Python > Matplotlib' 카테고리의 다른 글
[Matplotlib] plt 축 제목, 차트 제목 설정 함수 - xlabel, ylabel, title (+ 한글 깨짐 해결 추가) (0) | 2021.11.10 |
---|---|
[Matplotlib] 코랩 한글 깨짐 해결법 (Colab plt 그래프 한글 적용) (0) | 2021.11.09 |
[Matplotlib] plt 축 눈금 설정 함수 - xticks, yticks (0) | 2021.11.07 |