Форматирование математического текста в аннотации к matplotlib
Я пытаюсь написать текст в своем сюжете с некоторыми math
текст как
После получения много ошибок, таких как
>>> plt.annotate(r'$\log_{10}M_{200}={:.2f}$'.format(xc), xy=(0.9, 0.95), xycoords='axes fraction', size=18, color='blue')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: tuple index out of range
Но все же со следующей строкой я не смог получить то, что хочу
import pylab as plt
xc=0.24
plt.annotate(r'$\log_{:.2}M_{:.3}={:.2f}$'.format('10','200',xc), xy=(0.8, 0.95), xycoords='axes fraction', size=15, color='blue')
любое предложение?
1 ответ
Решение
Часть вашего второго решения, связанная с форматированием, прекрасно работает для меня, но, возможно, вам будет проще избежать форматирования, заключив числа в двойные фигурные скобки:
r'$\log_{{10}}M_{{200}}={:.2f}$'.format(xc)
Например, xc = 5
, это выводы
$\log_{10}M_{200}=5.00$