Spec-Zone.ru › Matplotlib 2.2

mathtext

Inheritance diagram of matplotlib.mathtext

matplotlib.mathtext

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

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

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

Поддерживаются шрифты TeX Computer Modern, распространяемые в пакете Bakoma, и шрифты 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) [исходный код]

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

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) [исходный код]

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

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 содержит поле width, чтобы указать (обычно отрицательное) значение отступа. Эта корректировка отступа появляется в горизонтальных списках между буквами, как A и V, когда дизайнер шрифтов решил, что лучше их сдвинуть ближе друг к другу или дальше. Узел кернинга может также появиться в вертикальном списке, когда его width обозначает дополнительный отступ в вертикальном направлении.

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=72, prop=None) [исходный код]

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

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

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

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

  • массив — массив NxM из альфа-байтов uint8 маски растеризованного tex.
  • глубина — смещение базовой линии от нижней части изображения в пикселях.
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
Размер шрифта в пунктах

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

  • массив — массив NxM из альфа-байтов uint8 маски растеризованного tex.
  • глубина — смещение базовой линии от нижней части изображения в пикселях.
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 бэкендом 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_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]

Базовые классы: 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]

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

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

class matplotlib.mathtext.SubSuperCluster [source]

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

SubSuperCluster — это своего рода хак, позволяющий обойти тот факт, что этот код выполняет двухпроходный анализ, как и 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 в качестве резервных, когда необходимый символ не найден в шрифте.

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

Spec-Zone.ru

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