반응형
Python에서 TeX를 사용하여 matplotlib 레이블에 개행 문자를 넣습니까?
matplotlib에서 플롯의 레이블 (예 : xlabel 또는 ylabel)에 줄 바꿈을 추가하려면 어떻게해야합니까? 예를 들면
plt.bar([1, 2], [4, 5])
plt.xlabel("My x label")
plt.ylabel(r"My long label with $\Sigma_{C}$ math \n continues here")
이상적으로는 y 레이블도 중앙에 배치하고 싶습니다. 이를 수행하는 방법이 있습니까? 레이블에는 TeX ( '$'로 묶임)와 개행 문자가 모두 있어야합니다.
귀하의 예는 정확히 어떻게 수행되는지 \n
입니다.. r 접두사를 제거해야하므로 파이썬이 원시 문자열로 처리하지 않습니다.
LaTeX 명령 과 줄 바꿈 의 자동 "이스케이프"라는 두 가지 장점을 모두 활용할 수 있습니다 .
plt.ylabel(r"My long label with unescaped {\LaTeX} $\Sigma_{C}$ math"
"\n" # Newline: the backslash is interpreted as usual
r"continues here with $\pi$")
(세 줄을 사용하는 대신 단일 공백으로 문자열을 분리하는 것이 또 다른 옵션입니다).
실제로 Python은 서로 뒤 따르는 문자열 리터럴을 자동으로 연결하며 원시 문자열 ( r"…"
)과 문자열을 문자 보간 ( "\n"
) 과 혼합 할 수 있습니다 .
plt.bar([1, 2], [4, 5])
plt.xlabel("My x label")
plt.ylabel(r"My long label with $\Sigma_{C}$ math" + "\n" + "continues here")
원시 문자열 형식이 아닌 개행 문자로 문자열을 연결하십시오.
다음 matplotlib python 스크립트는 새 줄로 텍스트를 만듭니다.
ax.text(10, 70, 'shock size \n $n-n_{fd}$')
다음은 새 줄이 없습니다. 텍스트 앞의 r에 주목하십시오.
ax.text(10, 70, r'shock size \n $n-n_{fd}$')
참고 URL : https://stackoverflow.com/questions/2660319/putting-newline-in-matplotlib-label-with-tex-in-python
반응형
'Program Tip' 카테고리의 다른 글
PHP 세션 파일 정리 (0) | 2020.12.07 |
---|---|
프로그래밍 방식으로 릴리스 / 디버그 모드 감지 (.NET) (0) | 2020.12.07 |
자바 스크립트 배열 전달-> PHP (0) | 2020.12.07 |
단일 gcc 명령으로 검색 경로에 여러 헤더 포함 및 라이브러리 디렉토리를 추가하는 방법은 무엇입니까? (0) | 2020.12.07 |
Android 체크 가능 메뉴 항목 (0) | 2020.12.07 |