我有一个matplotlib脚本启动...
import matplotlib as mpl
import matplotlib.pyplot as plt
import matplotlib.font_manager as fm
mpl.rcParams['xtick.labelsize']=16
...
Run Code Online (Sandbox Code Playgroud)
我用过这个命令
fm.findSystemFonts()
Run Code Online (Sandbox Code Playgroud)
获取我系统上的字体列表.我发现了我想要使用的.ttf文件的完整路径,
'/usr/share/fonts/truetype/anonymous-pro/Anonymous Pro BI.ttf'
Run Code Online (Sandbox Code Playgroud)
我尝试使用以下命令成功使用此字体
mpl.rcParams['font.family'] = 'anonymous-pro'
Run Code Online (Sandbox Code Playgroud)
和
mpl.rcParams['font.family'] = 'Anonymous Pro BI'
Run Code Online (Sandbox Code Playgroud)
这两者都回归了
/usr/lib/pymodules/python2.7/matplotlib/font_manager.py:1218: UserWarning: findfont: Font family ['anonymous-pro'] not found. Falling back to Bitstream Vera Sans
Run Code Online (Sandbox Code Playgroud)
我可以使用mpl.rcParams字典在我的图中设置这个字体吗?
编辑
在阅读了一下之后,似乎这是从.ttf文件中确定字体系列名称的一般问题.在linux或python中这很容易吗?
另外,我试过添加
mpl.use['agg']
mpl.rcParams['text.usetex'] = False
Run Code Online (Sandbox Code Playgroud)
没有任何成功
unu*_*tbu 14
指定字体系列:
如果您只知道ttf的路径,那么您可以使用以下get_name方法发现字体系列名称:
import matplotlib as mpl
import matplotlib.pyplot as plt
import matplotlib.font_manager as font_manager
path = '/usr/share/fonts/truetype/msttcorefonts/Comic_Sans_MS.ttf'
prop = font_manager.FontProperties(fname=path)
mpl.rcParams['font.family'] = prop.get_name()
fig, ax = plt.subplots()
ax.set_title('Text in a cool font', size=40)
plt.show()
Run Code Online (Sandbox Code Playgroud)
按路径指定字体:
import matplotlib.pyplot as plt
import matplotlib.font_manager as font_manager
path = '/usr/share/fonts/truetype/msttcorefonts/Comic_Sans_MS.ttf'
prop = font_manager.FontProperties(fname=path)
fig, ax = plt.subplots()
ax.set_title('Text in a cool font', fontproperties=prop, size=40)
plt.show()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7661 次 |
| 最近记录: |