matplotlib: Как использовать Arial-шрифт для легенды и LaTeX-mathfont для xlabel и ylabel - PullRequest
0 голосов
/ 16 сентября 2018

Я хочу установить Arial для Legend и название рисунка , LaTeX math-font для x- и y-label.

Случай 1: не используется rcParams['text.usetex'] = True

import matplotlib
import matplotlib.pyplot as plt
legend_font = {'family' : 'Arial', 'weight' : 'normal', 'size': 23}

a = [1, 2, 3]
b = [1, 2, 3]

plt.plot(a, b, label="Legend")
plt.xlabel(r"$f/MHz$")
plt.legend(prop=legend_font)
plt.show()

enter image description here

Шрифт легенды может быть Arial, но шрифтxlabel выглядит безобразно.

Случай 2: использование rcParams['text.usetex'] = True

import matplotlib
import matplotlib.pyplot as plt

matplotlib.rcParams['text.usetex'] = True


a = [1, 2, 3]
b = [1, 2, 3]

plt.plot(a, b, label="Legend")
plt.xlabel(r"$f/MHz$")
legend_font = {'family' : 'Arial', 'weight' : 'normal', 'size': 23}
plt.legend(prop=legend_font)
plt.show()

Теперь шрифт xlabel правильный.Но шрифт для Legend больше не работает.

Как я могу это решить?

Спасибо, заранее в 10 * *

1 Ответ

0 голосов
/ 16 сентября 2018

Добавьте следующую строку после plt.xlabel() и до legend_font = {'family' : 'Arial', 'weight' : 'normal', 'size': 23} в своем коде Case 2 (второй код, который вы написали выше)

matplotlib.style.use('classic')

Выход

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...