Matplotlib 이미지 그리드 정렬

Beginner

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

소개

이 튜토리얼에서는 Matplotlib 의 mpl_toolkits.axes_grid1 모듈에서 ImageGrid 함수를 사용하는 방법을 배웁니다. ImageGrid 함수를 사용하여 2x2 이미지 그리드를 생성하고 정렬할 것입니다.

VM 팁

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

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

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

필요한 라이브러리 가져오기 및 이미지 배열 생성

필요한 라이브러리를 가져오고 NumPy 라이브러리의 arangereshape 함수를 사용하여 10x10 이미지 배열 4 개를 생성하는 것으로 시작합니다.

import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.axes_grid1 import ImageGrid

im1 = np.arange(100).reshape((10, 10))
im2 = im1.T
im3 = np.flipud(im1)
im4 = np.fliplr(im2)

figure 및 ImageGrid 객체 생성

다음으로, plt.figure 함수를 사용하여 figure 객체를 생성하고 figsize 인수를 전달하여 figure 의 크기를 설정합니다. 그런 다음 ImageGrid 함수를 사용하여 ImageGrid 객체를 생성하고, subplot 인수로 figure, 111을 전달하고, 2x2 그리드의 축을 생성하기 위해 nrows_ncols 인수로 (2, 2)를 전달하며, 축 사이의 패딩을 설정하기 위해 axes_pad 인수로 0.1을 전달합니다.

fig = plt.figure(figsize=(4., 4.))
grid = ImageGrid(fig, 111, nrows_ncols=(2, 2), axes_pad=0.1)

그리드 반복 및 이미지 플롯

그런 다음 zip 함수를 사용하여 grid 객체를 반복하여 축과 이미지 배열을 모두 반복합니다. imshow 함수를 사용하여 각 이미지를 해당 축에 플롯합니다.

for ax, im in zip(grid, [im1, im2, im3, im4]):
    ax.imshow(im)

플롯 표시

마지막으로, plt.show 함수를 사용하여 플롯을 표시합니다.

plt.show()

요약

이 튜토리얼에서는 Matplotlib 의 mpl_toolkits.axes_grid1 모듈에서 ImageGrid 함수를 사용하여 여러 이미지를 그리드에 정렬하는 방법을 배웠습니다. 2x2 이미지 그리드를 생성하고 imshow 함수를 사용하여 이미지를 플롯했습니다.