Spec-Zone.ru › Matplotlib 3.0

mathtext

Inheritance diagram of matplotlib.mathtext

matplotlib.mathtext

mathtext — модуль для разбора подмножества синтаксиса TeX для математических выражений и их отрисовки в бэкенде matplotlib.

Для ознакомления с использованием см. Написание математических выражений. Этот документ в основном посвящен деталям реализации.

Модуль использует pyparsing для разбора выражения TeX.

Поддерживаются шрифты Computer Modern из дистрибутива Bakoma TeX и шрифты STIX. Есть экспериментальная поддержка использования произвольных шрифтов, но результаты могут варьироваться без соответствующей настройки и метрик для этих шрифтов.

class matplotlib.mathtext.Accent(c, state, math=True) [источник]

Базовый класс: matplotlib.mathtext.Char

Метрики шрифта для акцентов необходимо обрабатывать по-другому, так как они уже правильно смещены от базовой линии в шрифтах TrueType.

grow() [источник]

Увеличивает размер на один уровень. Нет ограничений на максимальный размер.

render(x, y) [источник]

Отрисовка символа на холсте.

shrink() [источник]

Уменьшает размер на один уровень. Существует только три уровня размеров, после чего размер больше не уменьшается.

class matplotlib.mathtext.AutoHeightChar(c, height, depth, state, always=False, factor=None) [источник]

Базовые классы: matplotlib.mathtext.Hlist

AutoHeightChar позволит создать символ, максимально приближенный к заданной высоте и глубине. При использовании шрифта с несколькими вариантами высоты некоторых символов (например, шрифтов BaKoMa), будет выбран соответствующий глиф; в противном случае всегда будет возвращена просто масштабированная версия глифа.

class matplotlib.mathtext.AutoWidthChar(c, width, state, always=False, char_class=<class 'matplotlib.mathtext.Char'>) [источник]

Базовые классы: matplotlib.mathtext.Hlist

AutoWidthChar позволит создать символ, максимально приближенный к заданной ширине. При использовании шрифта с несколькими вариантами ширины некоторых символов (например, шрифтов BaKoMa), будет выбран соответствующий глиф; в противном случае всегда будет возвращена просто масштабированная версия глифа.

class matplotlib.mathtext.BakomaFonts(*args, **kwargs) [источник]

Базовые классы: matplotlib.mathtext.TruetypeFonts

Используйте шрифты Bakoma TrueType для рендеринга.

Символы распределены по ряду файлов шрифтов, каждый из которых имеет свою собственную проприетарную 8-битную кодировку.

alias = '\\]'
get_sized_alternatives_for_symbol(fontname, sym) [источник]

Переопределите, если ваш шрифт предоставляет несколько размеров одного и того же символа. Должно вернуть список символов, соответствующих sym в различных размерах. Рендерер выражений выберет наиболее подходящий размер для данной ситуации из этого списка.

target = ']'
class matplotlib.mathtext.Box(width, height, depth) [источник]

Базовые классы: matplotlib.mathtext.Node

Представляет любой узел с физическим расположением.

grow() [источник]

Увеличивает размер на один уровень. Нет ограничений на максимальный размер.

render(x1, y1, x2, y2) [источник]
shrink() [источник]

Уменьшает размер на один уровень. Существует только три уровня размеров, после чего уменьшение больше невозможно.

class matplotlib.mathtext.Char(c, state, math=True) [источник]

Базовые классы: matplotlib.mathtext.Node

Представляет отдельный символ. В отличие от TeX, информация о шрифте и метрики хранятся вместе с каждым Char, чтобы упростить поиск метрик шрифта при необходимости. Обратите внимание, что TeX-блоки имеют ширину, высоту и глубину, в отличие от Type1 и Truetype, которые используют полную ограничивающую рамку и продвижение по оси x. Метрики должны быть преобразованы в формат TeX, а продвижение (если оно отличается от ширины) должно быть преобразовано в узел Kern, когда Char добавляется к родительскому узлу Hlist.

get_kerning(next) [источник]

Возвращает величину кернинга между этим и заданным символом. Вызывается, когда символы объединяются в Hlist для создания узлов Kern.

grow() [источник]

Увеличивает размер на один уровень. Нет ограничений на максимальный размер.

is_slanted() [источник]
render(x, y) [источник]

Отобразить символ на холсте

shrink() [источник]

Уменьшает размер на один уровень. Существует только три уровня размеров, после чего уменьшение больше невозможно.

class 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
class matplotlib.mathtext.DejaVuFonts(*args, **kwargs) [источник]

Базовые классы: matplotlib.mathtext.UnicodeFonts

use_cmex = False
class matplotlib.mathtext.DejaVuSansFontConstants [источник]

Базовые классы: matplotlib.mathtext.FontConstantsBase

class matplotlib.mathtext.DejaVuSansFonts(*args, **kwargs) [источник]

Базовые классы: matplotlib.mathtext.DejaVuFonts

Класс обработки шрифтов DejaVu Sans.

Если глиф не найден, используется шрифт Stix Sans.

class matplotlib.mathtext.DejaVuSerifFontConstants [источник]

Базовые классы: matplotlib.mathtext.FontConstantsBase

class matplotlib.mathtext.DejaVuSerifFonts(*args, **kwargs) [источник]

Базовые классы: matplotlib.mathtext.DejaVuFonts

Класс обработки шрифтов DejaVu Serif.

Если глиф не найден, используется шрифт Stix Serif.

matplotlib.mathtext.Error(msg) [источник]

Вспомогательный класс для повышения ошибок парсера.

class matplotlib.mathtext.Fil [источник]

Базовые классы: matplotlib.mathtext.Glue

class matplotlib.mathtext.Fill [источник]

Базовые классы: matplotlib.mathtext.Glue

class matplotlib.mathtext.Filll [источник]

Базовые классы: matplotlib.mathtext.Glue

class 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
class matplotlib.mathtext.Fonts(default_font_prop, mathtext_backend) [источник]

Базы: object

Абстрактный базовый класс для системы шрифтов, используемых для mathtext.

Класс должен уметь принимать ключи символов и имена файлов шрифтов и возвращать метрики символов. Он также делегирует задачу фактического рисования классу бэкенда.

default_font_prop: Объект FontProperties, используемый для стандартного не-математического шрифта или базового шрифта для рендеринга Unicode (универсального) шрифта.

mathtext_backend: Подкласс MathTextBackend, используемый для делегирования фактического рендеринга.

destroy() [источник]

Исправление циклических ссылок перед уничтожением объекта.

get_kern(font1, fontclass1, sym1, fontsize1, font2, fontclass2, sym2, fontsize2, dpi) [источник]

Получение расстояния кернинга для шрифта между sym1 и sym2.

fontX: одно из имён шрифтов TeX:

tt, it, rm, cal, sf, bf or default/regular (non-math)

fontclassX: TODO

symX: символ в формате TeX. Например, '1', 'x' или 'sigma'

fontsizeX: размер шрифта в пунктах

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: TODO

sym: символ в формате TeX. Например, '1', 'x' или 'sigma'

fontsize: размер шрифта в пунктах

dpi: текущее количество точек на дюйм

math: является ли sym математическим символом

Возвращает объект со следующими атрибутами:

  • advance: расстояние продвижения (в пунктах) глифа.
  • height: высота глифа в пунктах.
  • width: ширина глифа в пунктах.
  • xmin, xmax, ymin, ymax - прямоугольник отображения глифа
  • iceberg - расстояние от базовой линии до верхней части глифа. Соответствует определению "высоты" в TeX.
get_results(box) [источник]

Получение данных, необходимых бэкенду для рендеринга математического выражения. Возвращаемое значение зависит от бэкенда.

get_sized_alternatives_for_symbol(fontname, sym) [источник]

Переопределите метод, если ваш шрифт предоставляет несколько размеров одного символа. Он должен возвращать список символов, соответствующих sym в различных размерах. Рендерер выражения выберет из этого списка наиболее подходящий для данной ситуации размер.

get_underline_thickness(font, fontsize, dpi) [источник]

Получение толщины линии, соответствующей данному шрифту. Используется в качестве базовой единицы для рисования линий, например, в дроби или радикале.

get_used_characters() [источник]

Получение набора символов, использованных в математическом выражении. Используется бэкендами, которым необходимо подмножество шрифтов, чтобы определить, какие глифы включить.

get_xheight(font, fontsize, dpi) [источник]

Получение высоты x для данного font и fontsize.

render_glyph(ox, oy, facename, font_class, sym, fontsize, dpi) [источник]

Вывод глифа в

  • ox, oy: позиция
  • facename: одно из имён шрифтов TeX
  • font_class:
  • sym: имя символа TeX или отдельный символ
  • fontsize: размер шрифта в пунктах
  • dpi: DPI для отображения.
render_rect_filled(x1, y1, x2, y2) [источник]

Вывод заполненного прямоугольника от (x1, y1) до (x2, y2).

set_canvas_size(w, h, d) [источник]

Устанавливает размер буфера, используемого для рендеринга математического выражения. Это действительно необходимо только для растровых бэкендов.

class matplotlib.mathtext.Glue(glue_type, copy=False) [источник]

Базы: matplotlib.mathtext.Node

Большая часть информации в этом объекте хранится в базовом классе GlueSpec, который используется несколькими объектами glue. (Это оптимизация памяти, которая, вероятно, уже не важна, но проще придерживаться того, что делает TeX.)

grow() [источник]

Увеличение на один уровень. Нет ограничений на максимальный размер.

shrink() [источник]

Уменьшение на один уровень. Существует всего три уровня размеров, после которых уменьшение больше невозможно.

END_OF_DOCUMENT_MARKER
class matplotlib.mathtext.GlueSpec(width=0.0, stretch=0.0, stretch_order=0, shrink=0.0, shrink_order=0) [источник]

Базы: object

См. Glue.

copy() [источник]
classmethod factory(glue_type) [источник]
class matplotlib.mathtext.HCentered(elements) [источник]

Базы: matplotlib.mathtext.Hlist

Вспомогательный класс для создания Hlist, содержимое которого центрировано внутри его ограничивающей рамки.

class matplotlib.mathtext.Hbox(width) [источник]

Базы: matplotlib.mathtext.Box

Прямоугольная область с шириной только по горизонтали (нулевая высота и глубина).

class matplotlib.mathtext.Hlist(elements, w=0.0, m='additional', do_kern=True) [источник]

Базы: matplotlib.mathtext.List

Горизонтальный список областей.

hpack(w=0.0, m='additional') [источник]

Основная задача hpack() — вычисление размеров результирующих областей и корректировка склейки, если один из этих размеров задан заранее. Вычисленные размеры обычно охватывают весь материал внутри новой области; однако некоторые элементы могут выступать за её пределы, если используется отрицательная склейка, если область переполнена или если \vbox включает другие области, смещённые влево.

  • w: задаёт ширину
  • m: может быть 'точно' или 'дополнительно'.

Таким образом, hpack(w, 'exactly') создаёт область с шириной ровно w, в то время как hpack(w, 'additional') создаёт область с шириной, равной естественной ширине плюс w. Значения по умолчанию создают область с естественной шириной.

kern() [источник]

Вставляет узлы Kern между узлами Char, чтобы установить кернинг. Узлы Char сами определяют необходимую величину кернинга (get_kerning()), а эта функция просто создаёт связанный список в правильном порядке.

class matplotlib.mathtext.Hrule(state, thickness=None) [источник]

Базы: matplotlib.mathtext.Rule

Вспомогательный класс для создания горизонтальной линии.

class matplotlib.mathtext.Kern(width) [источник]

Базы: matplotlib.mathtext.Node

Узел Kern имеет поле ширины, указывающее величину (обычно отрицательную) отступа. Это изменение отступа появляется в горизонтальных списках между буквами, например А и В, когда дизайнер шрифта считает, что их следует сдвинуть ближе или дальше друг от друга. Узел кернинга также может появиться в вертикальном списке, где его ширина обозначает дополнительный отступ в вертикальном направлении.

depth = 0
grow() [источник]

Увеличивает размер на один уровень. Нет ограничений на максимальный размер.

height = 0
shrink() [источник]

Уменьшает размер на один уровень. Существует только три уровня размеров, после которых размер больше не уменьшается.

class matplotlib.mathtext.List(elements) [источник]

Базы: matplotlib.mathtext.Box

Список узлов (горизонтальный или вертикальный).

grow() [источник]

Увеличивает размер на один уровень. Нет ограничений на максимальный размер.

shrink() [источник]

Уменьшает размер на один уровень. Существует только три уровня размеров, после которых размер больше не уменьшается.

class matplotlib.mathtext.MathTextParser(output) [источник]

Основы: object

Создаёт MathTextParser для заданного бэкенда вывода.

get_depth(texstr, dpi=120, fontsize=14) [источник]

Возвращает смещение базовой линии от нижнего края изображения в пикселях.

texstr
Допустимая строка mathtext, например, r'IQ: $sigma_i=15$'
dpi
Точки на дюйм для рендеринга текста
fontsize
Размер шрифта в пунктах
parse [источник]

Разбирает заданное математическое выражение s при заданном dpi. Если указан prop, это объект FontProperties, определяющий «стандартный» шрифт для использования в математическом выражении; он используется для всего текста, не являющегося математическим.

Результаты кешируются, поэтому несколько вызовов parse() с одним и тем же выражением должны выполняться быстро.

to_mask(texstr, dpi=120, fontsize=14) [источник]
texstr
Допустимая строка mathtext, например, r'IQ: $sigma_i=15$'
dpi
Точки на дюйм для рендеринга текста
fontsize
Размер шрифта в пунктах

Возвращает кортеж (массив, глубина)

  • массив — массив масок растрового TeX размером NxM, типа uint8 alpha ubyte.
  • глубина — смещение базовой линии от нижнего края изображения в пикселях.
to_png(filename, texstr, color='black', dpi=120, fontsize=14) [источник]

Записывает выражение TeX в файл PNG.

Возвращает смещение базовой линии от нижнего края изображения в пикселях.

filename
Имя файла для записи или файловый объект
texstr
Допустимая строка mathtext, например, r'IQ: $sigma_i=15$'
color
Допустимый аргумент цвета matplotlib
dpi
Точки на дюйм для рендеринга текста
fontsize
Размер шрифта в пунктах

Возвращает смещение базовой линии от нижнего края изображения в пикселях.

to_rgba(texstr, color='black', dpi=120, fontsize=14) [источник]
texstr
Допустимая строка mathtext, например, r'IQ: $sigma_i=15$'
color
Любой аргумент цвета matplotlib
dpi
Точки на дюйм для рендеринга текста
fontsize
Размер шрифта в пунктах

Возвращает кортеж (массив, глубина)

  • массив — массив масок растрового TeX размером NxM, типа uint8 alpha ubyte.
  • глубина — смещение базовой линии от нижнего края изображения в пикселях.
exception matplotlib.mathtext.MathTextWarning [источник]

Основы: Warning

class matplotlib.mathtext.MathtextBackend [источник]

Основы: object

Базовый класс для кода mathtext, специфичного для бэкенда. Подклассы MathtextBackend предназначены для взаимодействия между mathtext и конкретным графическим бэкендом matplotlib.

Подклассы должны переопределить следующее:

  • render_glyph()
  • render_rect_filled()
  • get_results()

А также необязательно, если вам нужно использовать стиль хинтинга FreeType:

  • get_hinting_type()
get_hinting_type() [источник]

Получить тип хинтинга FreeType для использования с этим конкретным бэкендом.

get_results(box) [источник]

Возвращает кортеж, специфичный для бэкенда, который следует передать бэкенду после завершения всей обработки.

render_glyph(ox, oy, info) [источник]

Отображает глиф, описанный в info, в точке отсчёта (ox, oy).

render_rect_filled(x1, y1, x2, y2) [источник]

Отображает заполненный чёрный прямоугольник от (x1, y1) до (x2, y2).

set_canvas_size(w, h, d) [источник]

Устанавливает размеры холста для рисования.

class matplotlib.mathtext.MathtextBackendAgg [источник]

Основы: matplotlib.mathtext.MathtextBackend

Рендерит глифы и прямоугольники в буфер FTImage, который позже передаётся в изображение бэкендом Agg.

get_hinting_type() [источник]

Получить тип хинтинга FreeType для использования с этим конкретным бэкендом.

get_results(box, used_characters) [источник]

Возвращает кортеж, специфичный для бэкенда, который следует передать бэкенду после завершения всей обработки.

render_glyph(ox, oy, info) [источник]

Отображает глиф, описанный в info, в точке отсчёта (ox, oy).

render_rect_filled(x1, y1, x2, y2) [источник]

Отображает заполненный чёрный прямоугольник от (x1, y1) до (x2, y2).

set_canvas_size(w, h, d) [источник]

Устанавливает размеры холста для рисования.

class matplotlib.mathtext.MathtextBackendBitmap [источник]

Базы: matplotlib.mathtext.MathtextBackendAgg

get_results(box, used_characters) [источник]

Возвращает кортеж, специфичный для бэкенда, который следует передать бэкенду после завершения всех процессов.

class matplotlib.mathtext.MathtextBackendCairo [источник]

Базы: matplotlib.mathtext.MathtextBackend

Хранит информацию для рендеринга mathtext в бэкенде Cairo.

get_results(box, used_characters) [источник]

Возвращает кортеж, специфичный для бэкенда, который следует передать бэкенду после завершения всех процессов.

render_glyph(ox, oy, info) [источник]

Отображает глиф, описанный в info, в точке отсчёта (ox, oy).

render_rect_filled(x1, y1, x2, y2) [источник]

Отображает заполненный чёрный прямоугольник от (x1, y1) до (x2, y2).

class matplotlib.mathtext.MathtextBackendPath [source]

Базы: matplotlib.mathtext.MathtextBackend

Хранит информацию для рендеринга mathtext с использованием механизма путей текста.

get_results(box, used_characters) [source]

Возвращает кортеж, специфичный для бэкэнда, который нужно вернуть бэкэнду после завершения всех процессов.

render_glyph(ox, oy, info) [source]

Отображает глиф, описанный в info, в точке отсчёта (ox, oy).

render_rect_filled(x1, y1, x2, y2) [source]

Отображает заполненный черный прямоугольник от (x1, y1) до (x2, y2).

class matplotlib.mathtext.MathtextBackendPdf [source]

Базы: matplotlib.mathtext.MathtextBackend

Хранит информацию для рендеринга mathtext в бэкэнде PDF.

get_results(box, used_characters) [source]

Возвращает кортеж, специфичный для бэкэнда, который нужно вернуть бэкэнду после завершения всех процессов.

render_glyph(ox, oy, info) [source]

Отображает глиф, описанный в info, в точке отсчёта (ox, oy).

render_rect_filled(x1, y1, x2, y2) [source]

Отображает заполненный черный прямоугольник от (x1, y1) до (x2, y2).

class matplotlib.mathtext.MathtextBackendPs [source]

Базы: matplotlib.mathtext.MathtextBackend

Хранит информацию для рендеринга mathtext в бэкэнде PostScript.

get_results(box, used_characters) [source]

Возвращает кортеж, специфичный для бэкэнда, который нужно вернуть бэкэнду после завершения всех процессов.

render_glyph(ox, oy, info) [source]

Отображает глиф, описанный в info, в точке отсчёта (ox, oy).

render_rect_filled(x1, y1, x2, y2) [source]

Отображает заполненный черный прямоугольник от (x1, y1) до (x2, y2).

class matplotlib.mathtext.MathtextBackendSvg [source]

Базы: matplotlib.mathtext.MathtextBackend

Хранит информацию для рендеринга mathtext в бэкэнде SVG.

get_results(box, used_characters) [source]

Возвращает кортеж, специфичный для бэкэнда, который нужно вернуть бэкэнду после завершения всех процессов.

render_glyph(ox, oy, info) [source]

Отображает глиф, описанный в info, в точке отсчёта (ox, oy).

render_rect_filled(x1, y1, x2, y2) [source]

Отображает заполненный черный прямоугольник от (x1, y1) до (x2, y2).

class matplotlib.mathtext.NegFil [source]

Базы: matplotlib.mathtext.Glue

class matplotlib.mathtext.NegFill [source]

Базы: matplotlib.mathtext.Glue

class matplotlib.mathtext.NegFilll [source]

Базы: matplotlib.mathtext.Glue

class matplotlib.mathtext.Node [source]

Базы: object

Узел в модели блока TeX

get_kerning(next) [source]
grow() [source]

Увеличивает размер на один уровень. Нет ограничений на максимальный размер.

render(x, y) [source]
shrink() [source]

Уменьшает размер на один уровень. Существует всего три уровня размеров, после чего уменьшение более невозможно.

class matplotlib.mathtext.Parser [source]

Основы: object

Это анализатор математических выражений, основанный на pyparsing. Он фактически анализирует полные строки, содержащие математические выражения, при этом в обычном тексте могут также появляться пары $.

Грамматика основана непосредственно на грамматике TeX, хотя она и делает некоторые упрощения.

class State(font_output, font, font_class, fontsize, dpi) [source]

Основы: object

Хранит состояние анализатора.

Состояния помещаются и извлекаются из стека по мере необходимости, и «текущее» состояние всегда находится вверху стека.

copy() [source]
font
accent(s, loc, toks) [source]
auto_delim(s, loc, toks) [source]
binom(s, loc, toks) [source]
c_over_c(s, loc, toks) [source]
customspace(s, loc, toks) [source]
dfrac(s, loc, toks) [source]
end_group(s, loc, toks) [source]
font(s, loc, toks) [source]
frac(s, loc, toks) [source]
function(s, loc, toks) [source]
genfrac(s, loc, toks) [source]
get_state() [source]

Получить текущее состояние State анализатора.

group(s, loc, toks) [source]
is_between_brackets(s, loc) [source]
is_dropsub(nucleus) [source]
is_overunder(nucleus) [source]
is_slanted(nucleus) [source]
main(s, loc, toks) [source]
math(s, loc, toks) [source]
math_string(s, loc, toks) [source]
non_math(s, loc, toks) [source]
operatorname(s, loc, toks) [source]
overline(s, loc, toks) [source]
parse(s, fonts_object, fontsize, dpi) [source]

Анализирует выражение s с использованием заданного объекта fonts_object для вывода, при заданном fontsize и dpi.

Возвращает дерево разбора экземпляров Node.

pop_state() [source]

Извлечь состояние State из стека.

push_state() [source]

Поместить новое состояние State в стек, которое является просто копией текущего состояния.

required_group(s, loc, toks)
simple_group(s, loc, toks)
snowflake(s, loc, toks)
space(s, loc, toks) [source]
sqrt(s, loc, toks) [source]
stackrel(s, loc, toks) [source]
start_group(s, loc, toks) [source]
subsuper(s, loc, toks) [source]
symbol(s, loc, toks) [source]
unknown_symbol(s, loc, toks) [source]
class matplotlib.mathtext.Rule(width, height, depth, state) [source]

Основы: matplotlib.mathtext.Box

Узел Rule представляет собой тёмно-серый прямоугольник; он имеет поля width, depth и height, как и в элементе Hlist. Однако, если любое из этих размеров равно inf, фактическое значение будет определяться выполнением правила до границы самого внутреннего ограничивающего прямоугольника. Это называется «переменным размером». Ширина никогда не является переменной в элементе Hlist; высота и глубина никогда не являются переменными в элементе Vlist.

render(x, y, w, h) [source]
class matplotlib.mathtext.STIXFontConstants [source]

Основы: matplotlib.mathtext.FontConstantsBase

delta = 0.05
delta_integral = 0.3
delta_slanted = 0.3
script_space = 0.1
sub2 = 0.6
sup1 = 0.8
class matplotlib.mathtext.STIXSansFontConstants [source]

Основы: matplotlib.mathtext.FontConstantsBase

delta_integral = 0.3
delta_slanted = 0.6
script_space = 0.05
sup1 = 0.8
class matplotlib.mathtext.Ship [source]

Основы: object

После того, как прямоугольники были настроены, они отправляются на вывод. Поскольку прямоугольники могут быть внутри других прямоугольников, основная работа Ship выполняется двумя взаимно рекурсивными процедурами, hlist_out() и vlist_out(), которые просматривают узлы Hlist и узлы Vlist внутри горизонтальных и вертикальных прямоугольников. Глобальные переменные, используемые в TeX для хранения состояния во время обработки, здесь стали переменными экземпляра.

static clamp(value) [source]
hlist_out(box) [source]
vlist_out(box) [source]
class matplotlib.mathtext.SsGlue [source]

Основы: matplotlib.mathtext.Glue

class matplotlib.mathtext.StandardPsFonts(default_font_prop) [source]

Основы: matplotlib.mathtext.Fonts

Использует стандартные шрифты PostScript для рендеринга в backend_ps

В отличие от других классов шрифтов, BakomaFont и UnicodeFont, этот класс требует бэкенд Ps.

basepath = '/tmp/mpl_doc_build/lib/python3.7/site-packages/matplotlib/mpl-data/fonts/afm'
fontmap = {'cal': 'pzcmi8a', 'rm': 'pncr8a', 'tt': 'pcrr8a', 'it': 'pncri8a', 'sf': 'phvr8a', 'bf': 'pncb8a', None: 'psyr'}
get_kern(font1, fontclass1, sym1, fontsize1, font2, fontclass2, sym2, fontsize2, dpi) [source]

Получает расстояние кернинга для шрифта между sym1 и sym2.

fontX: одно из имён шрифтов TeX:

tt, it, rm, cal, sf, bf or default/regular (non-math)

fontclassX: TODO

symX: символ в исходном формате TeX. Например, '1', 'x' или 'sigma'

fontsizeX: размер шрифта в пунктах

dpi: текущее разрешение в точках на дюйм

get_underline_thickness(font, fontsize, dpi) [source]

Получает толщину линии, соответствующую данному шрифту. Используется в качестве базовой единицы для рисования линий, например в дроби или радикале.

get_xheight(font, fontsize, dpi) [source]

Получает высоту строчной буквы x для данного шрифта font и размера fontsize.

class matplotlib.mathtext.StixFonts(*args, **kwargs) [исходный код]

Основы: matplotlib.mathtext.UnicodeFonts

Класс обработки шрифтов для шрифтов STIX.

В дополнение к тому, что предоставляет UnicodeFonts, этот класс:

  • поддерживает «виртуальные шрифты», которые представляют собой полные наборы символов латинского алфавита с различными стилями шрифтов в специальных кодах Unicode, таких как «Blackboard».
  • обрабатывает альтернативные символы размером для шрифтов STIXSizeX.
cm_fallback = False
get_sized_alternatives_for_symbol(fontname, sym) [исходный код]

Переопределите, если ваш шрифт предоставляет несколько размеров одного и того же символа. Должен вернуть список символов, соответствующих символу в различных размерах. Рендеринг выражения выберет наиболее подходящий размер для данной ситуации из этого списка.

use_cmex = False
class matplotlib.mathtext.StixSansFonts(*args, **kwargs) [исходный код]

Основы: matplotlib.mathtext.StixFonts

Класс обработки шрифтов для шрифтов STIX (по умолчанию использует шрифты без засечек).

class matplotlib.mathtext.SubSuperCluster [исходный код]

Основы: matplotlib.mathtext.Hlist

SubSuperCluster — это своего рода хак для решения проблемы, что данный код выполняет двухочередной анализ, как и TeX. Это позволяет хранить достаточно информации в самом элементе hlist, а именно ядро, нижний и верхний индексы, таким образом, что если за ним следует другой индекс, который нужно прикрепить, его можно переконфигурировать на лету.

class matplotlib.mathtext.TruetypeFonts(default_font_prop, mathtext_backend) [исходный код]

Базовый класс для всех наборов шрифтов, использующих шрифты TrueType (через FT2Font).

destroy() [исходный код]

Исправление циклических ссылок перед уничтожением объекта.

get_kern(font1, fontclass1, sym1, fontsize1, font2, fontclass2, sym2, fontsize2, dpi) [исходный код]

Получение расстояния кернинга между символами sym1 и sym2.

fontX: одно из имён шрифтов TeX:

tt, it, rm, cal, sf, bf or default/regular (non-math)

fontclassX: TODO

symX: символ в формате TeX. Например, '1', 'x' или 'sigma'

fontsizeX: размер шрифта в пунктах

dpi: текущая плотность точек на дюйм

get_underline_thickness(font, fontsize, dpi) [исходный код]

Получение толщины линии, соответствующей заданному шрифту. Используется как базовая единица для рисования линий, например, в дроби или радикале.

get_xheight(fontname, fontsize, dpi) [исходный код]

Получение x-высоты для заданного font и fontsize.

class matplotlib.mathtext.UnicodeFonts(*args, **kwargs) [исходный код]

Базовый класс для обработки шрифтов Unicode.

Хотя некоторые достаточно полные шрифты Unicode (например, DejaVu) могут работать в некоторых ситуациях, единственный шрифт Unicode, о котором мне известно, с полным набором математических символов — STIX.

Этот класс будет использовать шрифты Bakoma в качестве резервного варианта, когда требуемый символ не найден в шрифте.

get_sized_alternatives_for_symbol(fontname, sym) [исходный код]

Переопределите, если ваш шрифт предоставляет несколько размеров одного и того же символа. Должен вернуть список символов, соответствующих sym в различных размерах. Диспетчер выражений выберет наиболее подходящий размер из этого списка для данной ситуации.

use_cmex = True
class matplotlib.mathtext.VCentered(elements) [исходный код]

Удобный класс для создания Vlist, содержимое которого центрировано в его ограничивающей области.

class matplotlib.mathtext.Vbox(height, depth) [исходный код]

Прямоугольник с высотой, но нулевой шириной.

class matplotlib.mathtext.Vlist(elements, h=0.0, m='additional') [исходный код]

Вертикальный список прямоугольников.

vpack(h=0.0, m='additional', l=inf) [исходный код]

Основная задача vpack() — вычисление размеров результирующих прямоугольников и корректировка отступов, если один из этих размеров задан заранее.

  • h: задаёт высоту
  • m: может быть 'точно' или 'дополнительно'.
  • l: максимальная высота

Таким образом, vpack(h, 'exactly') создаёт прямоугольник с высотой h, а vpack(h, 'additional') даёт прямоугольник с высотой, равной естественной высоте плюс h. Значения по умолчанию создают прямоугольник с естественной шириной.

class matplotlib.mathtext.Vrule(state) [исходный код]

Удобный класс для создания вертикальной линии.

matplotlib.mathtext.get_unicode_index(symbol[, bool]) → integer [исходный код]

Возвращает целочисленный индекс (из таблицы Unicode) символа. symbol может быть одиночным символом Unicode, командой TeX (например, r'pi') или именем символа Type1 (например, 'phi'). Если math равно False, текущий символ должен рассматриваться как не математический символ.

matplotlib.mathtext.math_to_image(s, filename_or_obj, prop=None, dpi=None, format=None) [исходный код]

Преобразует математическое выражение в изображение в точно обрезаемой области.

s
Математическое выражение. Математическая часть должна быть заключена в знаки доллара.
filename_or_obj
Путь к файлу или объект, принимающий данные изображения, для записи данных изображения.
prop
Если задано, объект FontProperties(), описывающий размер и стиль текста.
dpi
Переопределить значение dpi вывода, в противном случае использовать значение по умолчанию, связанное с форматом вывода.
format
Формат вывода, например, 'svg', 'pdf', 'ps' или 'png'. Если не указан, будет определён по имени файла.

© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.0.0/api/mathtext_api.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API