matplotlib에서 변수를 위 첨자로 올바르게 표시
5289 단어 파이썬matplotlib
환경은 Python 3.8.0, matplotlib 3.1.2입니다.
사안
matplotlib에서 변수 a
를 위 첨자로 출력하려고하고 다음과 같은 코드를 작성했습니다.
import numpy as np
import matplotlib.pyplot as plt
a = 14
x = np.arange(0, 1, 0.1)
y = x**a
plt.plot(x, y, label=rf'$y=x^{a}$') # 問題の箇所
plt.legend()
plt.show()
막상 플롯해 보면, 다음과 같은 그림을 얻을 수 있었습니다.
불행히도 변수 a
의 첫 번째 문자 만 위 첨자로 식별되었습니다.
죄송합니다. $y=x^{{a}}$
와 같이 괄호를 하나 늘려 플롯해 보면 $y=x^a$ 라고 표시되어 버렸습니다.
해결책
그 결과 다음과 같이 삼중으로 괄호를 늘려 해결했습니다.
import numpy as np
import matplotlib.pyplot as plt
a = 14
x = np.arange(0, 1, 0.1)
y = x**a
plt.plot(x, y, label=rf'$y=x^{{{a}}}$') # ズバッと解決
plt.legend()
plt.show()
왜
파이썬 문서에 썼습니다.
문자열 중 파괄호 밖에 있는 부분에 대해서는 써 있는 대로 취급됩니다. 다만 이중의 파괄호 '{{' 또는 '}}' 는, 각각에 대응하는 일중의 파괄호로 치환됩니다.
즉 최초의 파괄호가 일중의 경우 「 f'{a}'
」에서는, a
가 14
로 치환되어 파괄호가 지워져 처리되었으므로, 1 문자째만이 위 첨자가 되었네요.
다음에 이중의 경우 「f'{{a}}'
」에서는, 이중의 파괄호가 단일의 파괄호로 치환되어 a
는 그대로{a}
가 처리되었으므로, $y=x^a$ 라고 표시되어 버렸네요.
그래서 삼중 "f'{{{a}}}'
"로 하면 이중의 파괄호가 단일의 파괄호로 치환되고 a
는 14
로 치환되어 붙은 문자로 인식되었습니다.
다음과 같은 느낌입니다.
a = 14
print(f'x^{a}') # x^14
print(f'x^{{a}}') # x^{a}
print(f'x^{{{a}}}') # x^{14}
Tex 구문으로 올바른 것은 맨 아래입니다.
이상입니다. 파이썬 최선을 다하겠습니다.
Reference
이 문제에 관하여(matplotlib에서 변수를 위 첨자로 올바르게 표시), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kampersanda/items/b536c95606dfce08f8f3
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
import numpy as np
import matplotlib.pyplot as plt
a = 14
x = np.arange(0, 1, 0.1)
y = x**a
plt.plot(x, y, label=rf'$y=x^{a}$') # 問題の箇所
plt.legend()
plt.show()
그 결과 다음과 같이 삼중으로 괄호를 늘려 해결했습니다.
import numpy as np
import matplotlib.pyplot as plt
a = 14
x = np.arange(0, 1, 0.1)
y = x**a
plt.plot(x, y, label=rf'$y=x^{{{a}}}$') # ズバッと解決
plt.legend()
plt.show()
왜
파이썬 문서에 썼습니다.
문자열 중 파괄호 밖에 있는 부분에 대해서는 써 있는 대로 취급됩니다. 다만 이중의 파괄호 '{{' 또는 '}}' 는, 각각에 대응하는 일중의 파괄호로 치환됩니다.
즉 최초의 파괄호가 일중의 경우 「 f'{a}'
」에서는, a
가 14
로 치환되어 파괄호가 지워져 처리되었으므로, 1 문자째만이 위 첨자가 되었네요.
다음에 이중의 경우 「f'{{a}}'
」에서는, 이중의 파괄호가 단일의 파괄호로 치환되어 a
는 그대로{a}
가 처리되었으므로, $y=x^a$ 라고 표시되어 버렸네요.
그래서 삼중 "f'{{{a}}}'
"로 하면 이중의 파괄호가 단일의 파괄호로 치환되고 a
는 14
로 치환되어 붙은 문자로 인식되었습니다.
다음과 같은 느낌입니다.
a = 14
print(f'x^{a}') # x^14
print(f'x^{{a}}') # x^{a}
print(f'x^{{{a}}}') # x^{14}
Tex 구문으로 올바른 것은 맨 아래입니다.
이상입니다. 파이썬 최선을 다하겠습니다.
Reference
이 문제에 관하여(matplotlib에서 변수를 위 첨자로 올바르게 표시), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kampersanda/items/b536c95606dfce08f8f3
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
a = 14
print(f'x^{a}') # x^14
print(f'x^{{a}}') # x^{a}
print(f'x^{{{a}}}') # x^{14}
Reference
이 문제에 관하여(matplotlib에서 변수를 위 첨자로 올바르게 표시), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kampersanda/items/b536c95606dfce08f8f3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)