Matplotlib is hiring a Research Software Engineering Fellow! See discourse for details. Apply by January 3, 2020
matplotlib.mathtext
¶mathtext
是一个模块,用于解析Tex数学语法的子集并将其绘制到Matplotlib后端。
有关其用法的教程,请参见 写数学表达式 . 本文件主要涉及实施细节。
模块使用 pyparsing 解析tex表达式。
支持Tex计算机现代字体和Stix字体的Bakoma发行版。对使用任意字体有实验性的支持,但是如果没有适当的调整和度量,结果可能会有所不同。
matplotlib.mathtext.
Accent
(c, state, math=True)[源代码]¶对于重音符号,字体度量需要进行不同的处理,因为它们已经从TrueType字体的基线正确偏移。
matplotlib.mathtext.
AutoHeightChar
(c, height, depth, state, always=False, factor=None)[源代码]¶AutoHeightChar
将创建尽可能接近给定高度和深度的字符。当使用具有多个高度版本的某些字符(如bakoma字体)的字体时,将选择正确的字形,否则,这将始终返回字形的缩放版本。
matplotlib.mathtext.
AutoWidthChar
(c, width, state, always=False, char_class=<class 'matplotlib.mathtext.Char'>)[源代码]¶AutoWidthChar
将创建尽可能接近给定宽度的字符。当使用具有多个字符宽度版本的字体(如bakoma字体)时,将选择正确的glyph,否则将始终返回glyph的缩放版本。
matplotlib.mathtext.
BakomaFonts
(*args, **kwargs)[源代码]¶基类:matplotlib.mathtext.TruetypeFonts
使用Bakoma TrueType字体进行渲染。
符号散布在许多字体文件上,每个字体文件都有自己专有的8位编码。
alias
= '\\]'¶get_sized_alternatives_for_symbol
(fontname, sym)[源代码]¶如果字体提供同一符号的多个大小,则重写。应返回匹配的符号列表 sym 各种尺寸。表达式渲染器将从此列表中为给定情况选择最合适的大小。
target
= ']'¶matplotlib.mathtext.
Char
(c, state, math=True)[源代码]¶表示单个字符。与tex不同,字体信息和度量与每个 Char
以便在需要时更容易地查找字体度量。请注意,tex框的宽度、高度和深度不同于type1和truetype,前者使用完整的边界框,而后者在x方向前进。度量必须转换为tex方式,并且前进(如果与宽度不同)必须转换为 Kern
节点时 Char
添加到其父级 Hlist
.
matplotlib.mathtext.
ComputerModernFontConstants
[源代码]¶基类:matplotlib.mathtext.FontConstantsBase
delta
= 0.075¶delta_integral
= 0.3¶delta_slanted
= 0.3¶script_space
= 0.075¶sub1
= 0.2¶sub2
= 0.3¶subdrop
= 0.2¶sup1
= 0.45¶matplotlib.mathtext.
DejaVuFonts
(*args, **kwargs)[源代码]¶基类:matplotlib.mathtext.UnicodeFonts
use_cmex
= False¶matplotlib.mathtext.
DejaVuSansFonts
(*args, **kwargs)[源代码]¶基类:matplotlib.mathtext.DejaVuFonts
dejavu sans字体的字体处理类
如果找不到glyph,它将回退到stix sans
matplotlib.mathtext.
DejaVuSerifFonts
(*args, **kwargs)[源代码]¶基类:matplotlib.mathtext.DejaVuFonts
dejavu serif字体的字体处理类
如果找不到glyph,它将回退到stix serif
matplotlib.mathtext.
FontConstantsBase
[源代码]¶基类:object
一组常量,用于控制某些事物(如子脚本和上标)的布局。这些都是无法从字体本身的字体度量中可靠地检索到的度量。
delta
= 0.025¶delta_integral
= 0.1¶delta_slanted
= 0.2¶script_space
= 0.05¶sub1
= 0.3¶sub2
= 0.5¶subdrop
= 0.4¶sup1
= 0.7¶matplotlib.mathtext.
Fonts
(default_font_prop, mathtext_backend)[源代码]¶基类:object
用于MathText的字体系统的抽象基类。
类必须能够获取符号键和字体文件名并返回字符度量。它还委托给后端类来进行实际的绘图。
default_font_prop 答: FontProperties
对象用于默认非数学字体,或用于Unicode(通用)字体呈现的基本字体。
mathtext_backend 一个子类 MathTextBackend
用于委托实际渲染。
get_kern
(font1, fontclass1, sym1, fontsize1, font2, fontclass2, sym2, fontsize2, dpi)[源代码]¶获取字体间距 sym1 和 sym2 .
芬太克斯 :Tex字体名称之一:
tt, it, rm, cal, sf, bf or default/regular (non-math)
FordCaseX 待办事项
symX :原始tex形式的符号。例如,“1”、“X”或“Sigma”
芬茨赛克斯 :字体大小(以磅为单位)
dpi :当前每英寸点数
get_metrics
(font, font_class, sym, fontsize, dpi, math=True)[源代码]¶font :Tex字体名称之一:
tt, it, rm, cal, sf, bf or default/regular (non-math)
font_class 待办事项
sym :原始tex形式的符号。例如,“1”、“X”或“Sigma”
字体大小 :字体大小(以磅为单位)
dpi :当前每英寸点数
math :sym是否为数学字符
返回具有以下属性的对象:
- 提前 :标志符号的前进距离(以点为单位)。
- 高度 :标志符号的高度(以点为单位)。
- 宽度 :字形的宽度(以点为单位)。
- xmin , xmax , ymin , ymax -字形的墨迹矩形
- 冰山 -从基线到字形顶部的距离。这符合Tex对“高度”的定义。
get_sized_alternatives_for_symbol
(fontname, sym)[源代码]¶如果字体提供同一符号的多个大小,则重写。应返回匹配的符号列表 sym 各种尺寸。表达式渲染器将从此列表中为给定情况选择最合适的大小。
matplotlib.mathtext.
Glue
(glue_type, copy=False)[源代码]¶此对象中的大部分信息存储在底层 GlueSpec
类,在多个粘合对象之间共享。(这是一个内存优化,可能不再重要了,但更容易坚持tex的做法。)
matplotlib.mathtext.
GlueSpec
(width=0.0, stretch=0.0, stretch_order=0, shrink=0.0, shrink_order=0)[源代码]¶基类:object
见 Glue
.
matplotlib.mathtext.
Hlist
(elements, w=0.0, m='additional', do_kern=True)[源代码]¶一个水平的框列表。
matplotlib.mathtext.
Kern
(width)[源代码]¶A Kern
节点有一个宽度字段来指定(通常为负)间距。当字体设计人员说将A和V这样的字母靠得更近或更远时,这种间距更正会出现在水平列表中。紧排节点也可以出现在垂直列表中,当 宽度 表示垂直方向上的附加间距。
depth
= 0¶height
= 0¶