파이썬 그리드 지정 함수 사용법 : plt.grid()
안녕하세요. 이번 시간에는 파이썬 matplotlib으로 그래프 내에서
격자 눈금을 원하는대로 그리는 방법에 대해서 살펴보도록 하겠습니다.
기본 격자 설정 방법
먼저, 예시를 위하여 아래와 같이 0~10 범위의 빈 플롯을 생각해보겠습니다.
import matplotlib.pyplot as plt
plt.xlim(0, 10)
plt.ylim(0, 10)
plt.show()
이제, plt.grid() 메소드를 호출하여 기본적인 격자를 생성하면 아래처럼 나타납니다.
plt.xlim(0, 10)
plt.ylim(0, 10)
plt.grid() # 기본 격자 설정
plt.show()
현재 xticks, yticks의 간격이 기본적으로 2로 지정되어 있어
2 간격으로 그리드가 생성되었음을 확인할 수 있었습니다.
격자 눈금 간격 변경
격자 눈금 간격은 xticks, yticks로 설정한 눈금에 의해 좌우되므로,
xticks, yticks를 지정하여 그리드 간격도 변경이 가능합니다.
plt.xlim(0, 10)
plt.ylim(0, 10)
# 눈금 간격 1로 변경(x, y축 모두)
plt.xticks(range(11))
plt.yticks(range(11))
plt.grid()
plt.show()
그리드 간격을 1로 변경하였더니, 더 촘촘한 눈금이 그려진 것을 확인할 수 있었습니다.
격자 축 지정(x축, y축 그리드만 설정)
이번에는 x축, y축 중 1가지의 눈금만 그리는 방법을 살펴보겠습니다.
plt.grid() 메소드 내에서 axis 인자를 원하는 축 방향만 지정해주시면 됩니다.
예시로, x축의 눈금만 그리는 경우를 살펴보겠습니다.
plt.xlim(0, 10)
plt.ylim(0, 10)
plt.xticks(range(11))
plt.yticks(range(11))
plt.grid(axis = 'x') # x축 방향만 눈금 생성
plt.show()
마찬가지로 axis = 'y'로 설정시 y축 방향 격자만 그릴 수도 있습니다.
격자 스타일 지정(색깔, 점선, 굵기)
plt.plot() 함수에서 선의 스타일을 지정하는 방법과 마찬가지로
그리드 선도 색상, 점선 여부, 굵기 등 여러 속성을 지정할 수 있습니다.
아래 예시를 통해 격자 선의 스타일을 지정한 예시를 살펴보겠습니다.
plt.xlim(0, 10)
plt.ylim(0, 10)
plt.xticks(range(11))
plt.yticks(range(11))
# 오렌지 색, : 모양 점선, 굵기 = 2 지정
plt.grid(color = 'orange', linestyle = ':', linewidth = 2)
plt.show()
color 인자를 통하여 색상을, linestyle 인자로 점선 여부를,
linewidth 인자로 굵기를 지정한 예시를 살펴보았습니다.
x축, y축 눈금의 스타일을 다르게 지정하는 것도 아래처럼 진행이 가능합니다.
plt.xlim(0, 10)
plt.ylim(0, 10)
plt.xticks(range(11))
plt.yticks(range(11))
# x, y축 눈금 따로 설정
plt.grid(axis = 'x', color = 'orange', linestyle = ':', linewidth = 2)
plt.grid(axis = 'y', color = 'purple', linestyle = '--', linewidth = 1)
plt.show()
y축 방향으로는 -- 스타일, 굵기 1의 보라색 격자가 생성되었습니다.
이 외에도 더 다양한 격자 스타일의 종류도 지원하지만,
상세한 사용법은 plt.plot() 혹은 plt.grid() 함수의 공식 문서를 살펴보시면
원리 이해에 도움이 되실 것으로 생각하며, 여기서의 추가 논의는 생략하도록 하겠습니다.
'Python > Matplotlib' 카테고리의 다른 글
[Matplotlib] 파이썬 산점도 색, 크기, 모양, 여러개 겹치기 설정법 (1) | 2022.02.10 |
---|---|
[Matplotlib] 파이썬 그래프 범례(legend) 크기, 위치, 글자 색 설정법 (1) | 2022.01.24 |
[Matplotlib] plt.show() 의미와 여러 개일 때 차이 (2) | 2022.01.19 |