У меня есть следующие строки для визуализации аннотаций TeX на моем matplotlib
графике:
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import rc
rc('text', usetex=True)
rc('font', family='serif')
voltage = 220
notes = r"\noindent $V_2 = {0:.5} V$".format(voltage)
plt.annotate(notes, xy=(5,5), xytext=(7,7))
plt.show()
Это отлично работает, но мой первый придирка в том, что V
- это единица измерения, поэтому онабыть в текстовом режиме, вместо (курсивом) математического режима.Я пробую следующую строку:
notes = r"\noindent $V_2 = {0:.5} \text{V}$".format(voltage)
Это вызывает ошибку, потому что {
фигурные скобки }
являются собственностью синтаксиса форматирования строки Python.В приведенной выше строке только {0:.5}
является правильным;{V}
рассматривается как незнакомец.Например:
s1 = "Hello"
s2 = "World!"
print "Some string {0} {1}".format(s1, s2)
должен дать Some string Hello World!
.
Как мне убедиться, что {
фигурные скобки TeX }
не мешают {
фигурным скобкам Python }
* * 1023