Возможно ли иметь часть текста легенды в определенном стиле, допустим, жирный или курсив?
Стилизация части этикетки в легенде в matplotlib
Ответ 1
Как упоминает silvado в своем комментарии, вы можете использовать рендеринг LaTeX для более гибкого управления рендерингом текста. См. Здесь для получения дополнительной информации: http://matplotlib.org/users/usetex.html
Пример:
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import rc
# activate latex text rendering
rc('text', usetex=True)
x = np.arange(10)
y = np.random.random(10)
z = np.random.random(10)
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(x, y, label = r"This is \textbf{line 1}")
ax.plot(x, z, label = r"This is \textit{line 2}")
ax.legend()
plt.show()
Обратите внимание на 'r' перед строками меток. Из-за этого\будет рассматриваться как латексная команда и не будет интерпретироваться как python (так что вы можете ввести \textbf
вместо \\textbf
).
Ответ 2
Напишите между '$$', чтобы заставить matplotlib интерпретировать его.
import matplotlib.pyplot as plt
plt.plot(range(10), range(10), label = "Normal text $\it{Italics}$")
plt.legend()
plt.show()