[python] matplotlib 한글 깨짐 & 글자 겹치는 문제 해결

한글 깨짐

matplotlib에서는 기본적으로 한글을 지원하지 않기 때문에 한글로 입력하면 깨지는 현상이 발생한다.

해결방법

한글 폰트를 지정해 주면 된다.

plt.rcParams['font.family'] = 'Malgun Gothic'
plt.rcParams['axes.unicode_minus'] = False

 

글자 겹침

bar chart를 그리면 x축의 글자들이 겹치는 경우가 발생한다.

자동으로 겹치지 않게 해 주면 너무나 좋겠다만 그런 기능은 없고 우리가 직접 수정해야 한다.

해결방법

겹치는 부분들의 높낮이를 다르게 해서 보여주고 싶었지만 그런 방법은 찾지 못했고 많이들 사용하는 방법은 각도를 바꿔서 모두 다 출력되게 한다.

plt.xticks(rotation=90)

90도는 너무 극단적이고 45도가 적당 한듯하다. (글자 길이도 어느정도는 조정해야 할 듯)

ha는 글자를 어디에 맞춰서 정렬할지 정하는 것인데 right가 제일 깔끔한 것 같다.

plt.xticks(rotation=45, ha='right')