Spec-Zone.ru › Matplotlib 3.2

matplotlib.mathtext

Диаграмма наследования matplotlib.mathtext

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

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

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

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

class matplotlib.mathtext.Accent(c, state, math=True) [source]

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

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

grow(self) [source]

Увеличивает размер на один уровень. Ограничений на размер нет.

render(self, x, y) [source]

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

shrink(self) [source]

Уменьшает размер на один уровень. Максимально три уровня уменьшения.

class matplotlib.mathtext.AutoHeightChar(c, height, depth, state, always=False, factor=None) [source]

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

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

class matplotlib.mathtext.AutoWidthChar(c, width, state, always=False, char_class=<class 'matplotlib.mathtext.Char'>) [source]

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

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

class matplotlib.mathtext.BakomaFonts(*args, **kwargs) [source]

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

Использует шрифты Bakoma TrueType для отрисовки.

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

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

mathtext_backend: Подкласс MathTextBackend для делегирования фактической отрисовки.

alias = '\\]'
get_sized_alternatives_for_symbol(self, fontname, sym) [source]

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

target = ']'
class matplotlib.mathtext.Box(width, height, depth) [source]

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

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

grow(self) [source]

Увеличивает размер на один уровень. Ограничений на размер нет.

render(self, x1, y1, x2, y2) [source]
shrink(self) [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(self, next) [source]

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

grow(self) [source]

Увеличивает размер на один уровень. Ограничений на размер нет.

is_slanted(self) [source]
render(self, x, y) [source]

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

shrink(self) [source]

Уменьшает размер на один уровень. Максимально три уровня уменьшения.

END_OF_DOCUMENT_MARKER
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

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

mathtext_backend: Подкласс MathTextBackend для делегирования фактического рендеринга.

use_cmex = False
class matplotlib.mathtext.DejaVuSansFontConstants [source]

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

class matplotlib.mathtext.DejaVuSansFonts(*args, **kwargs) [source]

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

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

Если глиф не найден, он переходит на Stix Sans

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

mathtext_backend: Подкласс MathTextBackend для делегирования фактического рендеринга.

class matplotlib.mathtext.DejaVuSerifFontConstants [source]

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

class matplotlib.mathtext.DejaVuSerifFonts(*args, **kwargs) [source]

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

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

Если глиф не найден, он переходит на Stix Serif

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

mathtext_backend: Подкласс MathTextBackend для делегирования фактического рендеринга.

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
END_OF_DOCUMENT_MARKER
class matplotlib.mathtext.Fonts(default_font_prop, mathtext_backend) [source]

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

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

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

mathtext_backend: Подкласс MathTextBackend для делегирования фактического рендеринга.

destroy(self) [source]

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

get_kern(self, 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(self, 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: является ли символ математическим

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

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

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

get_sized_alternatives_for_symbol(self, fontname, sym) [source]

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

get_underline_thickness(self, font, fontsize, dpi) [source]

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

get_used_characters(self) [source]

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

get_xheight(self, font, fontsize, dpi) [source]

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

render_glyph(self, ox, oy, facename, font_class, sym, fontsize, dpi) [source]

Отображение глифа в

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

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

set_canvas_size(self, w, h, d) [source]

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

class matplotlib.mathtext.Glue(glue_type, copy=False) [source]

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

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

grow(self) [source]

Увеличение на один уровень.

shrink(self) [source]

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

class matplotlib.mathtext.GlueSpec(width=0.0, stretch=0.0, stretch_order=0, shrink=0.0, shrink_order=0) [source]

Базовый класс: object

См. Glue.

copy(self) [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

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

END_OF_DOCUMENT_MARKER
class matplotlib.mathtext.Hlist(elements, w=0.0, m='additional', do_kern=True) [source]

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

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

hpack(self, w=0.0, m='additional') [source]

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

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

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

kern(self) [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(self) [source]

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

height = 0
shrink(self) [source]

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

class matplotlib.mathtext.List(elements) [source]

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

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

grow(self) [source]

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

shrink(self) [source]

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

class matplotlib.mathtext.MathTextParser(output) [source]

Bases: object

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

get_depth(self, texstr, dpi=120, fontsize=14) [source]
Параметры:
texstrstr

Действительная строка mathtext, например, r'IQ: $sigma_i=15$'.

dpifloat

Настройка точек на дюйм, используемая для рендеринга текста.

Возвращает:
depthint

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

parse(self, s, dpi=72, prop=None) [source]

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

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

to_mask(self, texstr, dpi=120, fontsize=14) [source]
Параметры:
texstrstr

Действительная строка mathtext, например, r'IQ: $sigma_i=15$'.

dpifloat

Настройка точек на дюйм, используемая для рендеринга текста.

fontsizeint

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

Возвращает:
array2D uint8 alpha

Маска массива растризованного tex.

depthint

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

to_png(self, filename, texstr, color='black', dpi=120, fontsize=14) [source]

Рендеринг выражения tex в файл PNG.

Параметры:
filename

Запись файла или объекта файла.

texstrstr

Действительная строка mathtext, например, r'IQ: $sigma_i=15$'.

colorcolor

Цвет текста.

dpifloat

Настройка точек на дюйм, используемая для рендеринга текста.

fontsizeint

Размер шрифта в пунктах.

Возвращает:
depthint

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

to_rgba(self, texstr, color='black', dpi=120, fontsize=14) [source]
Параметры:
texstrstr

Действительная строка mathtext, например, r'IQ: $sigma_i=15$'.

colorcolor

Цвет текста.

dpifloat

Настройка точек на дюйм, используемая для рендеринга текста.

fontsizeint

Размер шрифта в пунктах.

Возвращает:
array(M, N, 4) array

Значения цвета RGBA растризованного tex, окрашенные цветом color.

depthint

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

exception matplotlib.mathtext.MathTextWarning [source]

Bases: Warning

class matplotlib.mathtext.MathtextBackend [source]

Bases: object

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

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

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

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

  • get_hinting_type()
get_hinting_type(self) [source]

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

get_results(self, box) [source]

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

render_glyph(self, ox, oy, info) [source]

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

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

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

set_canvas_size(self, w, h, d) [source]

Определение размеров холста для рисования

class matplotlib.mathtext.MathtextBackendAgg [source]

Базы: matplotlib.mathtext.MathtextBackend

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

get_hinting_type(self) [source]

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

get_results(self, box, used_characters) [source]

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

render_glyph(self, ox, oy, info) [source]

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

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

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

set_canvas_size(self, w, h, d) [source]

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

class matplotlib.mathtext.MathtextBackendBitmap [source]

Базы: matplotlib.mathtext.MathtextBackendAgg

get_results(self, box, used_characters) [source]

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

class matplotlib.mathtext.MathtextBackendCairo [source]

Базы: matplotlib.mathtext.MathtextBackend

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

get_results(self, box, used_characters) [source]

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

render_glyph(self, ox, oy, info) [source]

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

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

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

class matplotlib.mathtext.MathtextBackendPath [source]

Базы: matplotlib.mathtext.MathtextBackend

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

get_results(self, box, used_characters) [source]

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

render_glyph(self, ox, oy, info) [source]

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

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

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

class matplotlib.mathtext.MathtextBackendPdf [source]

Базы: matplotlib.mathtext.MathtextBackend

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

get_results(self, box, used_characters) [source]

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

render_glyph(self, ox, oy, info) [source]

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

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

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

class matplotlib.mathtext.MathtextBackendPs [source]

Базы: matplotlib.mathtext.MathtextBackend

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

get_results(self, box, used_characters) [source]

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

render_glyph(self, ox, oy, info) [source]

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

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

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

class matplotlib.mathtext.MathtextBackendSvg [source]

Bases: matplotlib.mathtext.MathtextBackend

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

get_results(self, box, used_characters) [source]

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

render_glyph(self, ox, oy, info) [source]

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

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

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

class matplotlib.mathtext.NegFil [source]

Bases: matplotlib.mathtext.Glue

class matplotlib.mathtext.NegFill [source]

Bases: matplotlib.mathtext.Glue

class matplotlib.mathtext.NegFilll [source]

Bases: matplotlib.mathtext.Glue

class matplotlib.mathtext.Node [source]

Bases: object

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

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

Увеличивает размер на один уровень. Размеры не ограничены.

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

Уменьшает размер на один уровень. После трёх уровней уменьшения размер больше не изменяется.

class matplotlib.mathtext.Parser [source]

Bases: object

This 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(self) [source]
property font
accent(self, s, loc, toks) [source]
auto_delim(self, s, loc, toks) [source]
binom(self, s, loc, toks) [source]
c_over_c(self, s, loc, toks) [source]
customspace(self, s, loc, toks) [source]
dfrac(self, s, loc, toks) [source]
end_group(self, s, loc, toks) [source]
font(self, s, loc, toks) [source]
frac(self, s, loc, toks) [source]
function(self, s, loc, toks) [source]
genfrac(self, s, loc, toks) [source]
get_state(self) [source]

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

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

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

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

pop_state(self) [source]

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

push_state(self) [source]

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

required_group(self, s, loc, toks)
simple_group(self, s, loc, toks)
snowflake(self, s, loc, toks)
space(self, s, loc, toks) [source]
sqrt(self, s, loc, toks) [source]
stackrel(self, s, loc, toks) [source]

[Устаревшее]

Примечания

Устарело начиная с версии 3.1:

start_group(self, s, loc, toks) [source]
subsuper(self, s, loc, toks) [source]
symbol(self, s, loc, toks) [source]
unknown_symbol(self, s, loc, toks) [source]
class matplotlib.mathtext.Rule(width, height, depth, state) [source]

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

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

render(self, 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(self, box) [source]
vlist_out(self, 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 backend.

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

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

basepath = '/usr/local/lib64/python3.8/site-packages/matplotlib/mpl-data/fonts/afm'
fontmap = {'cal': 'pzcmi8a', 'rm': 'pncr8a', 'tt': 'pcrr8a', 'it': 'pncri8a', 'sf': 'phvr8a', 'bf': 'pncb8a', None: 'psyr'}
get_kern(self, 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(self, font, fontsize, dpi) [source]

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

get_xheight(self, font, fontsize, dpi) [source]

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

class matplotlib.mathtext.StixFonts(*args, **kwargs) [source]

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

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

В дополнение к возможностям класса UnicodeFonts, этот класс:

  • поддерживает "виртуальные шрифты", которые представляют собой полные наборы символов букв и цифр с различными стилями шрифтов в особых кодовых точках Unicode, таких как "Blackboard".
  • обрабатывает альтернативные символы с различными размерами для шрифтов STIXSizeX.

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

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

cm_fallback = False
get_sized_alternatives_for_symbol(self, fontname, sym) [source]

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

use_cmex = False
END_OF_DOCUMENT_MARKER
class matplotlib.mathtext.StixSansFonts(*args, **kwargs) [source]

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

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

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

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

class matplotlib.mathtext.SubSuperCluster [source]

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

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

class matplotlib.mathtext.TruetypeFonts(default_font_prop, mathtext_backend) [source]

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

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

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

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

destroy(self) [source]

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

get_kern(self, 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(self, font, fontsize, dpi) [source]

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

get_xheight(self, fontname, fontsize, dpi) [source]

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

class matplotlib.mathtext.UnicodeFonts(*args, **kwargs) [source]

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

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

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

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

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

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

get_sized_alternatives_for_symbol(self, fontname, sym) [source]

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

use_cmex = True
class matplotlib.mathtext.VCentered(elements) [source]

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

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

class matplotlib.mathtext.Vbox(height, depth) [source]

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

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

class matplotlib.mathtext.Vlist(elements, h=0.0, m='additional') [source]

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

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

vpack(self, 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.Rule

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

matplotlib.mathtext.get_unicode_index(symbol, math=True) [source]

Возвращает целочисленный индекс (из таблицы Unicode) символа symbol.

Параметры:
symbolstr

Один символ Unicode, команда TeX (например, r'pi') или имя символа Type1 (например, 'phi').

mathbool, default is True

Если False, всегда обрабатывается как одиночный символ Unicode.

matplotlib.mathtext.math_to_image(s, filename_or_obj, prop=None, dpi=None, format=None) [source]

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

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.2.2/api/mathtext_api.html

Spec-Zone.ru

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