Подтвердить что ты не робот

Шрифт Matplotlib 'bold'

Следуя этому примеру:

import numpy as np
import matplotlib.pyplot as plt

fig = plt.figure()
for i, label in enumerate(('A', 'B', 'C', 'D')):
    ax = fig.add_subplot(2,2,i+1)
    ax.text(0.05, 0.95, label, transform=ax.transAxes,
      fontsize=16, fontweight='bold', va='top')

plt.show()

Я получаю этот вывод:

enter image description here

Почему мои ярлыки имеют нормальный вес, в то время как документация показывает, что это должно создавать жирные буквы A, B, C, D?

Дополнительная информация, это дает мне следующее предупреждение:

Warning (from warnings module):
File "C:\Python27\lib\site-packages\matplotlib\font_manager.py", line 1228
UserWarning)
UserWarning: findfont: Could not match :family=Bitstream Vera Sans:style=italic:variant=normal:weight=bold:stretch=normal:size=x-small. Returning C:\Python27\lib\site-packages\matplotlib\mpl-data\fonts\ttf\Vera.ttf
4b9b3361

Ответ 1

Попробуйте использовать weight вместо fontweight.

Ответ 2

Не уверен, что у вас все еще есть проблема. Я пробовал ваш код в Anaconda/Spyder, Python 2.7. Графики отображаются жирным шрифтом (A, B, C, D). Я согласен, что проблема связана с библиотекой. Попробуйте заменить/обновить font_manager.py или подтвердить файлы шрифтов:

Lib\сайт-пакеты\Matplotlib\MPL-данные\Fonts\TTF\

Ответ 3

Возможно, попробуйте использовать это -

plt.rcParams['axes.labelsize'] = 16
plt.rcParams['axes.labelweight'] = 'bold'

Сделайте это на глобальном уровне в своей программе.