mathtext
matplotlib.mathtext
mathtext — модуль для разбора подмножества синтаксиса TeX для математических выражений и их отрисовки в matplotlib-бэкенде.
Для получения руководства по его использованию см. Написание математических выражений. Данный документ в основном посвящен деталям реализации.
Модуль использует pyparsing для разбора TeX-выражений.
Поддерживаются шрифты TeX Computer Modern, распространяемые в пакете Bakoma, и шрифты STIX. Есть экспериментальная поддержка использования произвольных шрифтов, но результаты могут варьироваться без надлежащей настройки и метрик для этих шрифтов.
-
class matplotlib.mathtext.Accent(c, state, math=True)[source] -
Базовые классы:
matplotlib.mathtext.CharМетрики шрифта для акцентов необходимо обрабатывать по-другому, поскольку они уже правильно смещены от базовой линии в шрифтах TrueType.
-
grow()[source] -
Увеличивает размер на один уровень. Нет ограничений на максимальный размер.
-
render(x, y)[source] -
Отображение символа на холсте.
-
shrink()[source] -
Уменьшает размер на один уровень. Существует только три уровня размеров, после чего размер больше не уменьшается.
-
-
class matplotlib.mathtext.AutoHeightChar(c, height, depth, state, always=False, factor=None)[source] -
Основы:
matplotlib.mathtext.HlistAutoHeightCharсоздаст символ, максимально приближенный к заданной высоте и глубине. При использовании шрифта с несколькими вариантами высоты некоторых символов (например, шрифтов BaKoMa), будет выбран правильный глиф, в противном случае будет возвращена только масштабированная версия глифа.
-
class matplotlib.mathtext.AutoWidthChar(c, width, state, always=False, char_class=<class 'matplotlib.mathtext.Char'>)[source] -
Основы:
matplotlib.mathtext.HlistAutoWidthCharсоздаст символ, максимально приближенный к заданной ширине. При использовании шрифта с несколькими вариантами ширины некоторых символов (например, шрифтов BaKoMa), будет выбран правильный глиф, в противном случае будет возвращена только масштабированная версия глифа.
-
class matplotlib.mathtext.BakomaFonts(*args, **kwargs)[source] -
Основы:
matplotlib.mathtext.TruetypeFontsИспользуйте шрифты Bakoma TrueType для рендеринга.
Символы разбросаны по ряду файлов шрифтов, каждый из которых имеет собственную собственную кодировку с 8 битами.
-
alias = '\\]'
-
get_sized_alternatives_for_symbol(fontname, sym)[source] -
Переопределите, если ваш шрифт предоставляет несколько размеров одного и того же символа. Должен вернуть список символов, соответствующих символу в различных размерах. Интерпретатор выражений выберет наиболее подходящий размер для данной ситуации из этого списка.
-
target = ']'
-
-
class matplotlib.mathtext.Box(width, height, depth)[source] -
Основы:
matplotlib.mathtext.NodeПредставляет любой узел с физическим расположением.
-
grow()[source] -
Увеличивает размер на один уровень. Нет ограничений на увеличение размера.
-
render(x1, y1, x2, y2)[source]
-
shrink()[source] -
Уменьшает размер на один уровень. Существует только три уровня уменьшения, после чего уменьшение становится невозможным.
-
-
class matplotlib.mathtext.Char(c, state, math=True)[source] -
Основы:
matplotlib.mathtext.NodeПредставляет один символ. В отличие от TeX, информация о шрифте и метрики хранятся с каждым
Char, чтобы облегчить поиск метрик шрифта при необходимости. Обратите внимание, что TeX-боксы имеют ширину, высоту и глубину, в отличие от Type1 и Truetype, которые используют полную область захвата и продвижение в направлении x. Метрики должны быть преобразованы в формат TeX, а продвижение (если отличается от ширины) должно быть преобразовано в узелKern, когдаCharдобавляется к родительскому узлуHlist.-
get_kerning(next)[source] -
Возвращает величину кернинга между данным символом и другим символом. Вызывается при объединении символов в
Hlistдля создания узловKern.
-
grow()[source] -
Увеличивает размер на один уровень. Нет ограничений на увеличение размера.
-
is_slanted()[source]
-
render(x, y)[source] -
Отрисовывает символ на холсте
-
shrink()[source] -
Уменьшает размер на один уровень. Существует только три уровня уменьшения, после чего уменьшение становится невозможным.
-
-
class matplotlib.mathtext.ComputerModernFontConstants[source] -
Основы:
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)[source] -
Основы:
matplotlib.mathtext.UnicodeFonts-
use_cmex = False
-
-
class matplotlib.mathtext.DejaVuSansFontConstants[source]
-
class matplotlib.mathtext.DejaVuSansFonts(*args, **kwargs)[source] -
Основы:
matplotlib.mathtext.DejaVuFontsКласс обработки шрифтов DejaVu Sans
Если глиф не найден, он будет переключен на Stix Sans
-
class matplotlib.mathtext.DejaVuSerifFontConstants[source]
-
class matplotlib.mathtext.DejaVuSerifFonts(*args, **kwargs)[source] -
Основы:
matplotlib.mathtext.DejaVuFontsКласс обработки шрифтов DejaVu Serif
Если глиф не найден, он будет переключен на Stix Serif
-
matplotlib.mathtext.Error(msg)[source] -
Класс-помощник для повышения ошибок парсера.
-
class matplotlib.mathtext.Fil[source] -
Базы:
matplotlib.mathtext.Glue
-
class matplotlib.mathtext.Fill[source] -
Базы:
matplotlib.mathtext.Glue
-
class matplotlib.mathtext.Filll[source] -
Базы:
matplotlib.mathtext.Glue
-
class matplotlib.mathtext.FontConstantsBase[source] -
Базы:
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)[source] -
Базы:
objectАбстрактный базовый класс для системы шрифтов, используемых для mathtext.
Класс должен уметь принимать ключи символов и имена файлов шрифтов и возвращать метрики символов. Он также делегирует классу бэкенда выполнение фактического рисования.
default_font_prop: Объект
FontProperties, используемый для стандартного шрифта без математических символов, или базовый шрифт для рендеринга шрифтов Unicode (общих).mathtext_backend: Подкласс
MathTextBackendдля делегирования фактического рендеринга.-
destroy()[source] -
Исправить циклические ссылки перед тем, как объект будет уничтожен.
-
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_metrics(font, font_class, sym, fontsize, dpi, math=True)[source] -
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)[source] -
Получение данных, необходимых бэкенду для рендеринга математического выражения. Возвращаемое значение зависит от бэкенда.
-
get_sized_alternatives_for_symbol(fontname, sym)[source] -
Переопределите, если ваш шрифт предоставляет несколько размеров одного и того же символа. Должно возвращать список символов, соответствующих символу в различных размерах. Рендерер выражений выберет наиболее подходящий размер из этого списка для данной ситуации.
-
get_underline_thickness(font, fontsize, dpi)[source] -
Получение толщины линии, соответствующей данному шрифту. Используется в качестве базовой единицы для рисования линий, например, в дроби или радикале.
-
get_used_characters()[source] -
Получение набора символов, используемых в математическом выражении. Используется бэкендами, которые нуждаются в подмножестве шрифтов, чтобы знать, какие глифы включать.
-
get_xheight(font, fontsize, dpi)[source] -
Получение xheight для данного font и fontsize.
-
render_glyph(ox, oy, facename, font_class, sym, fontsize, dpi)[source] -
Рисование глифа в
- ox, oy: позиция
- facename: одно из имён шрифтов TeX
- font_class:
- sym: имя символа TeX или одиночный символ
- fontsize: размер шрифта в пунктах
- dpi: dpi для рисования.
-
render_rect_filled(x1, y1, x2, y2)[source] -
Рисование заполненного прямоугольника от (x1, y1) до (x2, y2).
-
set_canvas_size(w, h, d)[source] -
Установка размера буфера, используемого для рендеринга математического выражения. Необходимо только для бэкендов с растровым изображением.
-
-
class matplotlib.mathtext.Glue(glue_type, copy=False)[source] -
Базы:
matplotlib.mathtext.NodeБольшая часть информации в этом объекте хранится в базовом классе
GlueSpec, который используется несколькими объектами glue. (Это оптимизация памяти, которая, вероятно, больше не важна, но проще придерживаться того, что делает TeX.)-
grow()[source] -
Увеличение на один уровень.
-
shrink()[source] -
Уменьшение на один уровень. Есть только три уровня размеров, после чего размер больше не уменьшается.
-
-
class matplotlib.mathtext.GlueSpec(width=0.0, stretch=0.0, stretch_order=0, shrink=0.0, shrink_order=0)[source] -
Базы:
objectСм.
Glue.-
copy()[source]
-
classmethod factory(glue_type)[source]
-
-
class matplotlib.mathtext.HCentered(elements)[source] -
Базы:
matplotlib.mathtext.HlistКласс-обёртка для создания
Hlist, содержимое которого центрировано внутри его ограничительной рамки.
-
class matplotlib.mathtext.Hbox(width)[source] -
Базы:
matplotlib.mathtext.BoxПрямоугольник с шириной, но нулевой высотой и глубиной.
-
class matplotlib.mathtext.Hlist(elements, w=0.0, m='additional', do_kern=True)[source] -
Базы:
matplotlib.mathtext.ListГоризонтальный список прямоугольников.
-
hpack(w=0.0, m='additional')[source] -
Основная задача
hpack()— вычисление размеров результирующих прямоугольников и корректировка склеек, если один из этих размеров задан заранее. Вычисленные размеры обычно охватывают весь материал внутри нового прямоугольника; но некоторые элементы могут выступать за пределы, если использованы отрицательные склеивания, прямоугольник переполнен, или если\vboxвключает другие прямоугольники, смещённые влево.- w: задаёт ширину
- m: либо 'точно', либо 'дополнительно'.
Таким образом,
hpack(w, 'exactly')создаёт прямоугольник с точно заданной шириной w, аhpack(w, 'additional')даёт прямоугольник, ширина которого равна естественной ширине плюс w. По умолчанию создаётся прямоугольник с естественной шириной.
-
kern()[source] -
Вставка узлов
Kernмежду узламиCharдля установки кернинга. УзлыCharсами определяют требуемый кернинг (вget_kerning()), а эта функция просто создаёт связанный список нужным образом.
-
-
class matplotlib.mathtext.Hrule(state, thickness=None)[source] -
Базы:
matplotlib.mathtext.RuleКласс-обёртка для создания горизонтальной линии.
-
class matplotlib.mathtext.Kern(width)[source] -
Базы:
matplotlib.mathtext.NodeУзел
Kernсодержит поле width, чтобы указать (обычно отрицательное) значение отступа. Эта корректировка отступа появляется в горизонтальных списках между буквами, как A и V, когда дизайнер шрифтов решил, что лучше их сдвинуть ближе друг к другу или дальше. Узел кернинга может также появиться в вертикальном списке, когда его width обозначает дополнительный отступ в вертикальном направлении.-
depth = 0
-
grow()[source] -
Увеличение размера на один уровень. Пределов для размера нет.
-
height = 0
-
shrink()[source] -
Уменьшение размера на один уровень. Существует только три уровня размеров, после чего уменьшение больше не происходит.
-
-
class matplotlib.mathtext.List(elements)[source] -
Базы:
matplotlib.mathtext.BoxСписок узлов (горизонтальный или вертикальный).
-
grow()[source] -
Увеличение размера на один уровень. Пределов для размера нет.
-
shrink()[source] -
Уменьшение размера на один уровень. Существует только три уровня размеров, после чего уменьшение больше не происходит.
-
-
class matplotlib.mathtext.MathTextParser(output)[source] -
Bases:
objectСоздаёт MathTextParser для данного бэкенда вывода.
-
get_depth(texstr, dpi=120, fontsize=14)[source] -
Возвращает смещение базовой линии от нижней части изображения в пикселях.
- texstr
- Действительная строка mathtext, например, r'IQ: $sigma_i=15$'
- dpi
- Точек на дюйм для отрисовки текста
- fontsize
- Размер шрифта в пунктах
-
parse(s, dpi=72, prop=None)[source] -
Парсит заданное математическое выражение s при заданном dpi. Если предоставлен параметр prop, он является объектом
FontProperties, определяющим "стандартный" шрифт для использования в математическом выражении, используемый для всего текста, не являющегося математическим.Результаты кэшируются, поэтому несколько вызовов
parse()с тем же выражением должны быть быстрыми.
-
to_mask(texstr, dpi=120, fontsize=14)[source] -
- texstr
- Действительная строка mathtext, например, r'IQ: $sigma_i=15$'
- dpi
- Точек на дюйм для отрисовки текста
- fontsize
- Размер шрифта в пунктах
Возвращает кортеж (массив, глубина)
- массив — массив NxM uint8 альфа-убайтов маски растризованного tex.
- глубина — смещение базовой линии от нижней части изображения в пикселях.
-
to_png(filename, texstr, color='black', dpi=120, fontsize=14)[source] -
Записывает выражение tex в файл PNG.
Возвращает смещение базовой линии от нижней части изображения в пикселях.
- filename
- Записываемый имя файла или объект файла
- texstr
- Действительная строка mathtext, например, r'IQ: $sigma_i=15$'
- color
- Действительный аргумент цвета matplotlib
- dpi
- Точек на дюйм для отрисовки текста
- fontsize
- Размер шрифта в пунктах
Возвращает смещение базовой линии от нижней части изображения в пикселях.
-
to_rgba(texstr, color='black', dpi=120, fontsize=14)[source] -
- texstr
- Действительная строка mathtext, например, r'IQ: $sigma_i=15$'
- color
- Любой аргумент цвета matplotlib
- dpi
- Точек на дюйм для отрисовки текста
- fontsize
- Размер шрифта в пунктах
Возвращает кортеж (массив, глубина)
- массив — массив NxM uint8 альфа-убайтов маски растризованного tex.
- глубина — смещение базовой линии от нижней части изображения в пикселях.
-
-
exception matplotlib.mathtext.MathTextWarning[source] -
Bases:
Warning
-
class matplotlib.mathtext.MathtextBackend[source] -
Bases:
objectБазовый класс для кода бэкенда mathtext. Цель подклассов
MathtextBackend— обеспечить интерфейс между mathtext и конкретным бэкендом графики matplotlib.Подклассы должны переопределить следующее:
И необязательно, если вам нужно использовать стиль наводки FreeType:
-
get_hinting_type()[source] -
Получить тип наводки FreeType для использования с этим конкретным бэкендом.
-
get_results(box)[source] -
Возвращает кортеж, специфичный для бэкенда, для возврата бэкенду после завершения всех операций обработки.
-
render_glyph(ox, oy, info)[source] -
Отрисовать глиф, описанный в info, в точку отсчёта (ox, oy).
-
render_rect_filled(x1, y1, x2, y2)[source] -
Отрисовать заполненный чёрный прямоугольник от (x1, y1) до (x2, y2).
-
set_canvas_size(w, h, d)[source] -
Установить размер холста для отрисовки.
-
-
class matplotlib.mathtext.MathtextBackendAgg[source] -
Bases:
matplotlib.mathtext.MathtextBackendОтрисовывает глифы и прямоугольники в буфер FTImage, который затем передаётся в изображение Agg бэкендом Agg.
-
get_hinting_type()[source] -
Получить тип наводки FreeType для использования с этим конкретным бэкендом.
-
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).
-
set_canvas_size(w, h, d)[source] -
Установить размер холста для отрисовки.
-
-
class matplotlib.mathtext.MathtextBackendBitmap[source] -
Основы:
matplotlib.mathtext.MathtextBackendAgg-
get_results(box, used_characters)[source] -
Возвращает специфичную для бэкэнда кортеж, который нужно вернуть бэкэнду после завершения всех операций.
-
-
class matplotlib.mathtext.MathtextBackendCairo[source] -
Основы:
matplotlib.mathtext.MathtextBackendХранит информацию для отображения mathtext в бэкэнде Cairo.
-
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.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] -
Bases:
objectУзел в модели TeX-блока
-
get_kerning(next)[source]
-
grow()[source] -
Увеличивает размер на один уровень. Нет ограничения на максимальный размер.
-
render(x, y)[source]
-
shrink()[source] -
Уменьшает размер на один уровень. Существует только три уровня уменьшения размера; после чего уменьшение больше невозможно.
-
-
class matplotlib.mathtext.Parser[source] -
Bases:
objectThis is the pyparsing-based parser for math expressions. It actually parses full strings containing math expressions, in that raw text may also appear outside of pairs of
$.The grammar is based directly on that in TeX, though it cuts a few corners.
-
class State(font_output, font, font_class, fontsize, dpi)[source] -
Bases:
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] -
Bases:
matplotlib.mathtext.BoxУзел
Ruleпредставляет собой тёмно-серый прямоугольник; у него есть поля width, depth и height, как и уHlist. Однако, если какой-либо из этих размеров равен inf, фактическое значение будет определяться выполнением правила до границы самого внутреннего содержащего прямоугольника. Это называется "бегущим размером". Ширина никогда не является бегущей вHlist; высота и глубина никогда не являются бегущими вVlist.-
render(x, y, w, h)[source]
-
-
class matplotlib.mathtext.STIXFontConstants[source] -
Bases:
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] -
Bases:
matplotlib.mathtext.FontConstantsBase-
delta_integral = 0.3
-
delta_slanted = 0.6
-
script_space = 0.05
-
sup1 = 0.8
-
-
class matplotlib.mathtext.Ship[source] -
Bases:
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] -
Bases:
matplotlib.mathtext.Glue
-
class matplotlib.mathtext.StandardPsFonts(default_font_prop)[source] -
Bases:
matplotlib.mathtext.FontsИспользуйте стандартные шрифты PostScript для рендеринга в backend_ps
В отличие от других классов шрифтов, BakomaFont и UnicodeFont, этот класс требует backend Ps.
-
basepath = '/tmp/mpl_docs/lib/python3.6/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-высоты для заданного шрифта и размера шрифта.
-
-
class matplotlib.mathtext.StixFonts(*args, **kwargs)[source] -
Bases:
matplotlib.mathtext.UnicodeFontsКласс обработки шрифтов STIX.
В дополнение к тому, что предоставляет UnicodeFonts, этот класс:
- поддерживает "виртуальные шрифты", которые представляют собой полные наборы символов от a до z с различными стилями шрифтов в специальных кодовых точках Unicode, таких как "Blackboard".
- обрабатывает альтернативные символы с различными размерами для шрифтов STIXSizeX.
-
cm_fallback = False
-
get_sized_alternatives_for_symbol(fontname, sym)[source] -
Переопределите, если ваш шрифт предоставляет несколько размеров одного и того же символа. Должен вернуть список символов, соответствующих символу в различных размерах. Модуль рендеринга выражений выберет наиболее подходящий размер для данной ситуации из этого списка.
-
use_cmex = False
-
class matplotlib.mathtext.StixSansFonts(*args, **kwargs)[source] -
Bases:
matplotlib.mathtext.StixFontsКласс обработки шрифтов STIX (по умолчанию использует шрифты без засечек).
-
class matplotlib.mathtext.SubSuperCluster[source] -
Bases:
matplotlib.mathtext.HlistSubSuperCluster— это своего рода хак, позволяющий обойти тот факт, что этот код выполняет двухпроходный анализ, как и TeX. Это позволяет нам хранить достаточную информацию в самом списке, а именно ядро, подстрочный и надстрочный индексы, таким образом, если следует другой индекс, который нужно подключить, его можно переконфигурировать на лету.
-
class matplotlib.mathtext.TruetypeFonts(default_font_prop, mathtext_backend)[source] -
Базовый класс для всех настроек шрифтов, использующих шрифты TrueType (через FT2Font).
-
destroy()[source] -
Исправление циклических ссылок перед уничтожением объекта.
-
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(fontname, fontsize, dpi)[source] -
Получение значения xheight для данного font и fontsize.
-
-
class matplotlib.mathtext.UnicodeFonts(*args, **kwargs)[source] -
Базовый класс для работы с шрифтами Unicode.
Хотя некоторые достаточно полные шрифты Unicode (такие как DejaVu) могут работать в некоторых ситуациях, единственный шрифт Unicode, о котором мне известно с полным набором математических символов, это STIX.
Этот класс будет использовать шрифты Bakoma в качестве "fallback", когда необходимый символ не найден в шрифте.
-
get_sized_alternatives_for_symbol(fontname, sym)[source] -
Переопределите, если ваш шрифт предоставляет несколько размеров одного и того же символа. Должно вернуть список символов, соответствующих символу в различных размерах. Генератор выражений выберет наиболее подходящий размер из этого списка для данной ситуации.
-
use_cmex = True
-
-
class matplotlib.mathtext.VCentered(elements)[source] -
Класс-утилита для создания
Vlist, содержимое которого центрируется внутри ограничивающей рамки.
-
class matplotlib.mathtext.Vbox(height, depth)[source] -
Прямоугольник с высотой (нулевой шириной).
-
class matplotlib.mathtext.Vlist(elements, h=0.0, m='additional')[source] -
Вертикальный список прямоугольников.
-
vpack(h=0.0, m='additional', l=inf)[source] -
Основная задача
vpack()— вычисление размеров получившихся прямоугольников и корректировка расстояний, если один из этих размеров задан заранее.- h: задаёт высоту
- m: либо 'точно', либо 'дополнительно'.
- l: максимальная высота
Таким образом,
vpack(h, 'exactly')создаёт прямоугольник с высотой, равной ровно h, в то время какvpack(h, 'additional')даёт прямоугольник с высотой, равной естественной высоте плюс h. По умолчанию получаем прямоугольник с естественной шириной.
-
-
class matplotlib.mathtext.Vrule(state)[source] -
Класс-утилита для создания вертикальной линии.
-
matplotlib.mathtext.get_unicode_index(symbol[, bool]) → integer[source] -
Возвращает целочисленный индекс (из таблицы 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)[source] -
Преобразует математическое выражение в изображение, используя чётко ограниченный прямоугольник.
- s
- Математическое выражение. Математическая часть должна быть заключена в знаки доллара.
- filename_or_obj
- Путь к файлу или записываемому объекту для записи данных изображения.
- prop
- Если задан, объект FontProperties() описывает размер и стиль текста.
- dpi
- Замена выходной плотности пикселей на дюйм. В противном случае используется значение по умолчанию, связанное с выходным форматом.
- format
- Формат вывода, например, 'svg', 'pdf', 'ps' или 'png'. Если не задан, будет определён из имени файла.
-
matplotlib.mathtext.unichr_safe(index)[source] -
Возвращает символ Unicode, соответствующий индексу, или символ замены, если это узкая версия Python, а запрашиваемый символ находится вне BMP.
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/2.2.3/api/mathtext_api.html