轴标签部分的 Matplotlib 斜体 - 适用于默认字体但未指定字体
Matplotlib Italic in portion of axes labels - applied to default font but not specified font
我希望情节中的所有文本都是 Times New Roman,因此我执行了以下操作:
import matplotlib.pyplot as plt
plt.rcParams["font.family"] = "Times New Roman" # change default font
我只希望标签的“(x)”和“(z)”部分为斜体,所以我这样做了:
plt.xlabel('Underutilization $\it{(x)}$', labelpad=15)
plt.ylabel('Productivity $\it{(z)}$', labelpad=15)
然而,我在绘制时最终得到的是 Times New Roman 中的 'Underutilization',但斜体无衬线字体中的 '(x)'(默认值为 Python)。与 ylabel 相同。
我该如何补救?
$
标志内的文本由 matplotlib 的 mathtext (unless you are using LaTex), and is controlled by the rcParam
mathtext.fontset
which is outlined in the documentation 由
口述
mathtext.fontset: ‘dejavusans’ (default)
‘dejavuserif’, ‘cm’ (Computer Modern), ‘stix’,
‘stixsans’ or ‘custom’
使用LaTex for the text rendering 可以更灵活地选择字体,我相信会支持 Times New Roman。如果你使用 LaTex 那么它应该在你调整 font.family
.
时调整数学字体
我希望情节中的所有文本都是 Times New Roman,因此我执行了以下操作:
import matplotlib.pyplot as plt
plt.rcParams["font.family"] = "Times New Roman" # change default font
我只希望标签的“(x)”和“(z)”部分为斜体,所以我这样做了:
plt.xlabel('Underutilization $\it{(x)}$', labelpad=15)
plt.ylabel('Productivity $\it{(z)}$', labelpad=15)
然而,我在绘制时最终得到的是 Times New Roman 中的 'Underutilization',但斜体无衬线字体中的 '(x)'(默认值为 Python)。与 ylabel 相同。
我该如何补救?
$
标志内的文本由 matplotlib 的 mathtext (unless you are using LaTex), and is controlled by the rcParam
mathtext.fontset
which is outlined in the documentation 由
mathtext.fontset: ‘dejavusans’ (default)
‘dejavuserif’, ‘cm’ (Computer Modern), ‘stix’,
‘stixsans’ or ‘custom’
使用LaTex for the text rendering 可以更灵活地选择字体,我相信会支持 Times New Roman。如果你使用 LaTex 那么它应该在你调整 font.family
.