matplotlib.texmanager#

支持在 Matplotlib 中嵌入 TeX 表达式。

要求

  • LaTeX。

  • *Agg 后端:dvipng>=1.6。

  • PS 后端:PSfrag、dvips 和 Ghostscript>=9.0。

  • PDF 和 SVG 后端:如果存在 LuaTeX,它将被用于加速一些后处理步骤,但请注意,它不用于解析 TeX 字符串本身(仅支持 LaTeX)。

要启用 Matplotlib 图形中所有文本的 TeX 渲染,请将 rcParams["text.usetex"](默认值:False)设置为 True。

TeX 和 dvipng/dvips 处理结果缓存到 ~/.matplotlib/tex.cache 中,以便在会话之间重用。

TexManager.get_rgba 也可用于直接获取 RGBA NumPy 数组形式的栅格输出。

class matplotlib.texmanager.TexManager[source]#

基类: object

使用 TeX 将字符串转换为 dvi 文件,并将结果缓存到目录中。

缓存目录名为 tex.cache,位于 get_cachedir 返回的目录中。

对该构造函数的重复调用始终返回相同的实例。

classmethod get_basefile(tex, fontsize, dpi=None)[source]#

根据字符串、字体大小和 DPI 的哈希值返回文件名。

classmethod get_custom_preamble()[source]#

返回一个字符串,其中包含用户添加到 tex 导言区的附加内容。

classmethod get_font_preamble()[source]#

返回一个字符串,其中包含 tex 导言区的字体配置。

classmethod get_grey(tex, fontsize=None, dpi=None)[source]#

返回 alpha 通道。

classmethod get_rgba(tex, fontsize=None, dpi=None, rgb=(0, 0, 0))[source]#

将 latex 渲染的 tex 字符串作为 RGBA 数组返回。

示例

>>> texmanager = TexManager()
>>> s = r"\TeX\ is $\displaystyle\sum_n\frac{-e^{i\pi}}{2^n}$!"
>>> Z = texmanager.get_rgba(s, fontsize=12, dpi=80, rgb=(1, 0, 0))
classmethod get_text_width_height_descent(tex, fontsize, renderer=None)[source]#

返回文本的宽度、高度和下沉值。

classmethod make_dvi(tex, fontsize)[source]#

生成一个包含 latex 文本字符串布局的 dvi 文件。

返回文件名。

classmethod make_png(tex, fontsize, dpi)[source]#

生成一个包含 latex 渲染的 tex 字符串的 png 文件。

返回文件名。

classmethod make_tex(tex, fontsize)[source]#

生成一个 tex 文件,用于以特定字体大小渲染 tex 字符串。

返回文件名。