티스토리 뷰

SW development/Python

matplotlib

junkhead 2021. 9. 14. 00:59

pyplot 기초

한 화면에 여러 개의 이미지를 그리려면 figure 함수를 통해 Figure 객체를 만든 후 add_subplot 메서드를 통해 원하는 개수만큼 subplot를 만들면 된다. 아래의 예제는 두 개의 이미지를 각각 하나의 plot에 그리는 예제이다.

 

    fig = plt.figure()
    ax1 = fig.add_subplot(1, 2, 1)
    ax1.set_title('Image read by skimg')
    ax1.imshow(rgb)
    ax1.axis('off')

    ax2 = fig.add_subplot(1, 2, 2)
    ax2.set_title('Image read by matplot image')
    ax2.imshow(img)
    ax2.axis('off')
    
    plt.show()
  • add_subplot
    • add_subplot(1,2,1)의 인자는 순서대로 row, col, 설정하는 subplot의 순서이다. 
    • subplot은 왼쪽 상단부터 오른쪽 하단의 방향으로 증가한다.
  • axis('off')
    • index를 제거한다.

 

Label 추가하기

    fig = plt.figure()
    ax1 = fig.add_subplot(1, 2, 1)
    ax1.set_title('Read by skimg')
    ax1.imshow(rgb)
    ax1.set_xlabel('(a)')
    ax1.set_xticks([]), ax1.set_yticks([])

    ax2 = fig.add_subplot(1, 2, 2)
    ax2.set_title('Read by matplot')
    ax2.imshow(img)
    ax2.set_xlabel('(b)')
    ax2.set_xticks([]), ax2.set_yticks([])

    plt.subplots_adjust(hspace=1, wspace=1)
    plt.show()
  • set_xlabel
    • 이미지 하단에 label을 추가할 수 있다.

 

Subplot 간 간격 띄우기

    fig = plt.figure()
    ax1 = fig.add_subplot(1, 2, 1)
    ax1.set_title('Read by skimg')
    ax1.imshow(rgb)
    ax1.set_xlabel('(a)')
    ax1.set_xticks([]), ax1.set_yticks([])

    ax2 = fig.add_subplot(1, 2, 2)
    ax2.set_title('Read by matplot')
    ax2.imshow(img)
    ax2.set_xlabel('(b)')
    ax2.set_xticks([]), ax2.set_yticks([])

    plt.subplots_adjust(hspace=1, wspace=1)
    plt.show()
  • subplots_adjust
    • hspace, wspace 값을 설정하여 간격을 조정할 수 있다.

 

'SW development > Python' 카테고리의 다른 글

[Window] Python 환경설정  (0) 2020.12.29
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함