Bunny Code
Matplotlib x축 선형 그대로 표현 방법만 바꾸기 (1e8 → $10^8$) 본문
논문 Figure를 그리다 보면 그래프 안의 요소들을 바꾸어야 할 일들이 많다.
선의 색상, 두께, 글자 크기 등 많은 것들은 검색을 통해 쉽게 바꿀 수 있지만,
x축 표현 방법과 관련 숫자 크기를 바꾸는 내용은 쉽게 찾을 수 없어 직접 포스팅하고자 한다.
무슨 상황인지 설명을 먼저 해보자.
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 10, 100) * 10**7
y = np.ones_like(x) * 5
plt.figure(figsize=(6, 6))
plt.plot(x, y, 'r-')
plt.show()
위와 같이 코드를 작성하면, 다음의 그래프를 그릴 수 있다.
문제는 x축의 $1e8$ 부분이다.
제출하고자 하는 journal 혹은 conference에 따라 $1e8$이 아니라 10의 거듭제곱 표현 방식인 $10^8$로 작성해야할 때가 있다.
이와 같은 문제를 검색하면 그래프의 x축을 선형 축이 아닌 로그 축으로 바꾸는 방법들이 주로 나와 답답했는데 간단한 해결방법을 찾았다.
아래 코드 한줄이면 해결 가능하다.
plt.gca().ticklabel_format(axis='x', useMathText=True)
$10^8$의 크기도 그래프의 다른 숫자들과 마찬가지로 fontsize를 통해 조절가능하다.
원하는 fontsize를 다음과 같이 입력하면 된다.
plt.gca().xaxis.get_offset_text().set_fontsize(20)
코드 두 줄을 추가한 그래프를 보면 축을 표현하는 방법과 그 크기가 잘 바뀐 것을 확인할 수 있다.
'Python Basic' 카테고리의 다른 글
[Python] - 23) 표준 모듈 불러오기 (0) | 2020.09.11 |
---|---|
[Python] - 22) 예외 객체, 예외 구분하기 (0) | 2020.08.27 |
[Python] - 21) 예외 처리(try except else finally) (0) | 2020.08.26 |
[Python] - 20) 예외 처리(조건문 활용, try except 구문) (0) | 2020.08.25 |
[Python] - 19) 파일 처리, with 구문 (0) | 2020.08.24 |
Comments