Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Matplotlib 플롯에서 수평·수직, 주요·보조 눈금선을 독립적으로 설정하는 방법

플롯에 수평과 수직, 주요(major)와 보조(minor) 눈금선을 각각 다르게 설정하려면 grid() 메서드를 활용하면 됩니다. xaxis와 yaxis 객체에 대해 which 매개변수로 "major" 또는 "minor"를 지정하고, 색상(color), 선 스타일(linestyle), 선 두께(linewidth)를 자유롭게 조절할 수 있습니다.

구현 단계

  • 그림(figure) 크기를 설정하고 서브플롯 주변의 여백을 조정합니다.
  • figure와 서브플롯 집합을 생성합니다.
  • y축에 대해 주요 눈금 기준의 수평 그리드 선을 설정합니다.
  • MultipleLocator를 사용해 x축의 보조 눈금 위치 지정자(locator)를 등록합니다.
  • grid() 메서드로 보조 눈금 기준의 수직 그리드 선을 그립니다.
  • show() 메서드로 그림을 화면에 표시합니다.

예제 코드

import matplotlib.pyplot as plt
from matplotlib.ticker import MultipleLocator

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

fig, ax = plt.subplots()

ax.yaxis.grid(which="major", color='r', linestyle='-', linewidth=2)
ml = MultipleLocator(0.10)

ax.xaxis.set_minor_locator(ml)
ax.xaxis.grid(which="minor", color='k', linestyle='-.', linewidth=0.7)

plt.show()

코드 설명

ax.yaxis.grid(which="major", ...) — y축 방향, 즉 수평 그리드 선 중 주요 눈금에 해당하는 선만 빨간색 실선(두께 2)으로 표시합니다.

MultipleLocator(0.10) — x축의 보조 눈금이 0.10 간격으로 배치되도록 위치 지정자를 생성합니다.

ax.xaxis.grid(which="minor", ...) — x축 방향, 즉 수직 그리드 선 중 보조 눈금에 해당하는 선만 검은색 일점쇄선(두께 0.7)으로 표시합니다.

실행 결과

위 코드를 실행하면 수평 방향으로는 굵은 빨간색 주요 그리드가, 수직 방향으로는 가는 검은색 보조 그리드가 서로 독립적으로 표시된 그래프를 확인할 수 있습니다. 이처럼 which 매개변수와 축별 grid() 호출을 조합하면 눈금선의 종류와 방향을 원하는 대로 세밀하게 제어할 수 있습니다.