强制matplotlibrc使用Arial(字体路径)
Force matplotlibrc to use Arial (path of font)
我的系统中安装了 Arial 字体:
/usr/share/fonts/truetype/msttcorefonts/Arial_Bold_Italic.ttf
/usr/share/fonts/truetype/msttcorefonts/arialbi.ttf
/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
/usr/share/fonts/truetype/msttcorefonts/arial.ttf
/usr/share/fonts/truetype/msttcorefonts/ariali.ttf
/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
/usr/share/fonts/truetype/msttcorefonts/Arial_Italic.ttf
/usr/share/fonts/truetype/msttcorefonts/Arial_Black.ttf
/usr/share/xbmc/media/Fonts/arial.ttf
/usr/local/share/texmf/fonts/tfm/urw/arial
/usr/local/share/texmf/fonts/afm/urw/arial
/usr/local/share/texmf/fonts/vf/urw/arial
/usr/local/share/texmf/fonts/type1/urw/arial
我在 matplotlibrc 中进行了更改,包括以下行:
font.sans-serif : Arial
如果我检查里面 IPython:
import matplotlib.pyplot as plt
plt.plot([1,2,3,4,5,], '*')
t = plt.ylabel(r'1, 2, 3, 8, 9 6 11 Testing Label')
print(t.get_fontname())
输出为:
myhome/local/lib/python2.7/site-packages/matplotlib-1.4.2-py2.7-linux-
x86_64.egg/matplotlib/font_manager.py:1279: UserWarning: findfont: Font
family [u'sans-serif'] not found. Falling back to Bitstream Vera Sans
(prop.get_family(), self.defaultFamily[fontext]))
Bitstream Vera Sans
如何更改此行为并为我的所有绘图使用 Arial 字体?
为什么没有加载 Arial 字体?
有趣的是,如果我使用 Seaborn,它 returns Liberation Sans
第一个字体(在内部字体列表中)是 Arial,第二个是 Liberation Sans
。
按照@BenjaminRoot 的建议删除 ~/.matplotlib
上的字体缓存
事实上,在我的 Debian 系统中,virtualenv 生态系统中有 python 东西,这样的文件夹位于 ~/.cache/matplotlib/
我已经删除了所有文件和文件夹,并再次重新生成了缓存。
现在可以了! =]
我的系统中安装了 Arial 字体:
/usr/share/fonts/truetype/msttcorefonts/Arial_Bold_Italic.ttf
/usr/share/fonts/truetype/msttcorefonts/arialbi.ttf
/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
/usr/share/fonts/truetype/msttcorefonts/arial.ttf
/usr/share/fonts/truetype/msttcorefonts/ariali.ttf
/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
/usr/share/fonts/truetype/msttcorefonts/Arial_Italic.ttf
/usr/share/fonts/truetype/msttcorefonts/Arial_Black.ttf
/usr/share/xbmc/media/Fonts/arial.ttf
/usr/local/share/texmf/fonts/tfm/urw/arial
/usr/local/share/texmf/fonts/afm/urw/arial
/usr/local/share/texmf/fonts/vf/urw/arial
/usr/local/share/texmf/fonts/type1/urw/arial
我在 matplotlibrc 中进行了更改,包括以下行:
font.sans-serif : Arial
如果我检查里面 IPython:
import matplotlib.pyplot as plt
plt.plot([1,2,3,4,5,], '*')
t = plt.ylabel(r'1, 2, 3, 8, 9 6 11 Testing Label')
print(t.get_fontname())
输出为:
myhome/local/lib/python2.7/site-packages/matplotlib-1.4.2-py2.7-linux-
x86_64.egg/matplotlib/font_manager.py:1279: UserWarning: findfont: Font
family [u'sans-serif'] not found. Falling back to Bitstream Vera Sans
(prop.get_family(), self.defaultFamily[fontext]))
Bitstream Vera Sans
如何更改此行为并为我的所有绘图使用 Arial 字体? 为什么没有加载 Arial 字体?
有趣的是,如果我使用 Seaborn,它 returns Liberation Sans
第一个字体(在内部字体列表中)是 Arial,第二个是 Liberation Sans
。
按照@BenjaminRoot 的建议删除 ~/.matplotlib
事实上,在我的 Debian 系统中,virtualenv 生态系统中有 python 东西,这样的文件夹位于 ~/.cache/matplotlib/
我已经删除了所有文件和文件夹,并再次重新生成了缓存。
现在可以了! =]