반응형
하나의 그래프가 아니라 여러개의 그래프를 그리다보면
x축 label과 제목이 겹치는 현상이 자주 발생한다.
그럴 때 해결하는 방법을 알아보자
문제의 그래프
첫번째 서브플롯의 x축 label과 아래 서브플롯의 제목이 겹쳐져 있다.
해결방법1.
fig.tight_layout()
위 방법은 공백이 줄어들면서 오히려 글자들이 더 겹쳐졌다.
다른 방법을 알아보자
해결방법2.
subplots_adjust(left, bottom, right, top, wspace, hspace)
현재 배치되어 있는 subplot들의 위치를 직접 조정한다.
left, bottom, right, top
서브플롯 4면의 위치 조정
hspace, wspace
서브플롯 간의 간격을 위해 각각 figure의 너비와 높이에 대한 비율 조절
plt.subplots_adjust(left=0.125, bottom=0.1, right=0.9, top=0.9, wspace=0.2, hspace=0.2)
직접 간격을 조절하니 거의 겹치지 않게 되었다.
plt.subplots_adjust(left=0.125, bottom=0.1, right=0.9, top=0.9, wspace=0.2, hspace=0.35)
hspace만 0.35로 바꿔보자
원하는 대로 글씨가 겹쳐지지 않게 나왔다.
해결방법3.
plt.subplots(constrained_layout=True)
subplots에서 constrained_layout을 True로 넘겨준다.
서브플롯간의 간격을 가능한 최적의 수치로 자동 조정해준다.
이 또한 글씨가 잘 겹치지 않게 잘 나왔다.
위 세가지 방법 모두 어떤 그래프를 그리냐에 따라 다르겠지만
직접 조정하는 것이 번거롭다면 마지막 방법을 자주 이용해도 될 것 같다.
반응형
'시각화 > Matplotlib' 카테고리의 다른 글
Matplotlib - 밀도 그래프 : density, kde (0) | 2020.07.25 |
---|---|
Matplotlib - 히스토그램 : hist (0) | 2020.07.25 |
Matplotlib - 막대 그래프, (누적)가로 막대 그래프 : bar, barh (0) | 2020.07.25 |
Matplotlib - 면적 그래프 : area (0) | 2020.07.24 |
Matplotlib - plt.subplots (0) | 2020.07.23 |