Matplotlib 中文用户指南 4.4 默认字体
默认字体
译者:飞龙
基本的默认字体由一系列rcParams
参数控制:
rcParam | 用法 |
---|---|
'font.family' | 字体名称或{'cursive', 'fantasy', 'monospace', 'sans', 'sans serif', 'sans-serif', 'serif'} 的列表 |
'font.style' | 默认字体,例如'normal' ,'italic' |
'font.variant' | 默认变体,例如'normal' ,'small-caps' (未测试) |
'font.stretch' | 默认拉伸'normal' ,'condensed' (未完成) |
'font.weight' | 字体粗细,可为整数或字符串 |
'font.size' | 默认字体大小(以磅为单位)。 相对字体大小('large' ,'x-small' )按照该大小计算 |
字体系列别名({'cursive','fantasy','monospace','sans','sans serif','sans-serif','serif'}
)和实际字体名称之间的映射由以下rcParams
控制 :
系列别名 | 映射的rcParam |
---|---|
'serif' | 'font.serif' |
'monospace' | 'font.monospace' |
'fantasy' | 'font.fantasy' |
'cursive' | 'font.cursive' |
{'sans', 'sans serif', 'sans-serif'} | 'font.sans-serif' |
它是字体名称的列表。
非拉丁字形文本
从 v2.0 开始,默认字体包含许多西方字母的字形,但仍然没有覆盖 mpl 用户可能需要的所有字形。 例如,DejaVu 没有覆盖中文,韩语或日语。
要将默认字体设置为支持所需代码点的字体,请将字体名称添加到font.family
或所需的别名列表前面。
matplotlib.rcParams['font.sans-serif'] = ['Source Han Sans TW', 'sans-serif']
或在.matplotlibrc
文件中设置:
font.sans-serif: Source Han Sans TW, Ariel, sans-serif
要控制每个艺术家使用的字体,使用上面记录的'name'
,'fontname'
或'fontproperties'
关键字参数。
在 linux 上,fc-list
是用于发现字体名称的实用工具;例如
$ fc-list :lang=zh family
Noto to Sans Mono CJK TC,Noto Sans Mono CJK TC Bold
Noto Sans CJK TC,Noto Sans CJK TC Medium
Noto Sans CJK TC,Noto Sans CJK TC DemiLight
Noto Sans CJK KR,Noto Sans CJK KR Black
Noto Sans CJK TC,Noto Sans CJK TC Black
Noto Sans Mono CJK TC,Noto Sans Mono CJK TC Regular
Noto Sans CJK SC,Noto Sans CJK SC Light
列出了所有支持中文的字体。