Подтвердить что ты не робот

Matplotlib LaTeX: непоследовательное поведение с греческими буквами (конкретно\rho)

Я пытаюсь добавить некоторые оси-метки к графу, который содержит греческую букву "rho". Для этого я хочу использовать возможности LaTeX Matplotlib, но, похоже, проблема с символом \rho.

Вот минимальный пример:

import matplotlib.pyplot as plt
from matplotlib import rc,rcParams

rc('text',usetex=True)
rcParams.update({'font.size': 16})

plt.plot([0,1,2,3,4],[0,1,4,9,16])
plt.xlabel('\rho A_i') # works if \rho is replaced with, for example, \sigma
plt.ylabel('Something else')
plt.show()

При первом запуске я получаю кучу ошибок LaTeX и пустое фигурное окно, снова запускает график, но xlabel читает "ho Ai", где я является индексом, как ожидалось.

Странно, если я заменил \rho на что-то другое, скажем, \sigma, оно отображается правильно. Может ли кто-нибудь сказать мне, почему он недоволен моим примером кода и как его исправить?

Спасибо.

P.s. Я попытался поставить выражение в $..$, но ничего не изменил.

4b9b3361

Ответ 1

Я думаю, вы должны использовать необработанные строки, а также использовать знаки $. Попробуйте:

plt.xlabel(r'$\rho A_i$')

Ответ 2

Будьте внимательны при использовании \n, \r и т.д. в строке. Это команды для, например, ввод новой строки и т.д.

https://docs.python.org/2/library/re.html

Чтобы убедиться, что вы не используете эти операторы регулярного выражения, поместите \\rho вместо \rho.