2014-08-28 2 views
4

과학 저널에 논문을 제출할 때 A, B, ...가있는 그림의 다른 하위 그림을 자주 열거해야합니다.Matplotlib : A, B, C가있는 그림의 서브 플로트에 주석 달기

enter image description here

이것은 매우 일반적인 문제처럼 소리 나는하기 matplotlib 자동으로 그렇게하는 우아한 방법을 찾으려고 노력했지만, 나는 아무것도를 찾을 놀랐습니다. 그러나 어쩌면 나는 적당한 수색 기간을 사용하고 있지 않다. 이상적으로는 그림의 크기를 조정하거나 서브 플로트를 fig.subplots_adjust, fig.tight_layout 또는 그와 비슷한 위치로 이동하면 글자가 서브 플로트에 상대적으로 고정되도록 주석을 달 수있는 방법을 찾고 있습니다.

도움이나 해결책을 제공해 주시면 감사하겠습니다.

답변

9

서브 플로트와 관련된 주석을 원하면 ax.text을 사용하여 플로팅하는 것이 나에게 가장 편리한 방법 인 것 같습니다. 내가 거기에 알고 우아한 방법이 될했다

import numpy as np 
import matplotlib.pyplot as plt 
import string 

fig, axs = plt.subplots(2,2,figsize=(8,8)) 
axs = axs.flat 

for n, ax in enumerate(axs): 

    ax.imshow(np.random.randn(10,10), interpolation='none')  
    ax.text(-0.1, 1.1, string.ascii_uppercase[n], transform=ax.transAxes, 
      size=20, weight='bold') 

enter image description here

+0

:

같은 것을 생각해 보자. 고마워. – fabee

+0

내가 대답 한 질문에 중복으로 표시했습니다. 나는 이해 상충을 인정하지만 질문 우선 순위에 따른다. 당신이 불만을 느낀다면 알려주세요. – tacaswell

+0

아니요, 전혀 문제 없습니다. 어서. –