GridSpec 을 사용한 서브플롯 사용자 정의

Beginner

This tutorial is from open-source community. Access the source code

소개

이 튜토리얼에서는 GridSpec을 사용하여 서브플롯을 생성하고, width_ratiosheight_ratios를 사용하여 서브플롯의 상대적인 크기를 제어하며, subplot params (left, right, bottom, top, wspace, 및 hspace) 를 사용하여 서브플롯 주변 및 사이의 간격을 제어하는 방법을 배웁니다.

VM 팁

VM 시작이 완료되면 왼쪽 상단을 클릭하여 Notebook 탭으로 전환하여 실습을 위해 Jupyter Notebook에 액세스하십시오.

때로는 Jupyter Notebook 이 로딩을 완료하는 데 몇 초 정도 기다려야 할 수 있습니다. Jupyter Notebook 의 제한 사항으로 인해 작업의 유효성 검사는 자동화할 수 없습니다.

학습 중에 문제가 발생하면 Labby 에게 문의하십시오. 세션 후 피드백을 제공하면 문제를 즉시 해결해 드리겠습니다.

라이브러리 임포트

matplotlib.pyplotGridSpec과 같은 필요한 라이브러리를 임포트하는 것으로 시작합니다.

import matplotlib.pyplot as plt
from matplotlib.gridspec import GridSpec

GridSpec으로 서브플롯 생성

이 단계에서는 GridSpec을 사용하여 서브플롯을 생성합니다. 2 개의 행과 2 개의 열이 있는 figure 를 생성합니다. 또한 서브플롯의 상대적인 크기를 제어하기 위해 width_ratiosheight_ratios를 지정합니다.

fig = plt.figure()
gs = GridSpec(2, 2, width_ratios=[1, 2], height_ratios=[4, 1])
ax1 = fig.add_subplot(gs[0])
ax2 = fig.add_subplot(gs[1])
ax3 = fig.add_subplot(gs[2])
ax4 = fig.add_subplot(gs[3])

서브플롯 주변 및 간격 제어

이 단계에서는 GridSpec을 사용하여 서브플롯 주변 및 간격을 제어합니다. 각각 3 개의 행과 3 개의 열을 가진 2 개의 gridspecs 를 사용하여 figure 를 생성합니다. 간격을 제어하기 위해 left, right, bottom, top, wspace, 및 hspace 매개변수를 지정합니다.

fig = plt.figure()
gs1 = GridSpec(3, 3, left=0.05, right=0.48, wspace=0.05)
ax1 = fig.add_subplot(gs1[:-1, :])
ax2 = fig.add_subplot(gs1[-1, :-1])
ax3 = fig.add_subplot(gs1[-1, -1])

gs2 = GridSpec(3, 3, left=0.55, right=0.98, hspace=0.05)
ax4 = fig.add_subplot(gs2[:, :-1])
ax5 = fig.add_subplot(gs2[:-1, -1])
ax6 = fig.add_subplot(gs2[-1, -1])

축 주석 (Annotate Axes)

이 단계에서는 해당 서브플롯 번호로 축에 주석을 추가합니다.

def annotate_axes(fig):
    for i, ax in enumerate(fig.axes):
        ax.text(0.5, 0.5, "ax%d" % (i+1), va="center", ha="center")
        ax.tick_params(labelbottom=False, labelleft=False)

annotate_axes(fig)

플롯 표시

이 단계에서는 플롯을 표시합니다.

plt.show()

요약

이 튜토리얼에서는 GridSpec을 사용하여 서브플롯을 생성하고 서브플롯 주변 및 사이의 간격을 제어하는 방법을 배웠습니다. 또한 해당 서브플롯 번호로 축에 주석을 추가하는 방법도 배웠습니다. 이러한 기술은 복잡한 플롯 및 시각화를 만드는 데 유용합니다.