Spec-Zone.ru › Matplotlib 3.7

matplotlib.ticker

Определение и форматирование делений шкалы

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

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

Определение делений шкалы

Класс Locator является базовым классом для всех локеров делений. Локеи обрабатывают автоматическое масштабирование пределов отображения на основе пределов данных и выбор расположения делений. Полезный полуавтоматический локер делений — MultipleLocator. Он инициализируется базовым значением, например, 10, и выбирает пределы оси и деления, которые являются кратными этому базовому значению.

Подклассы Locator, определённые здесь:

AutoLocator

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

MaxNLocator

Находит до максимального количества интервалов с делениями в удобных местах.

LinearLocator

Равномерно размещает деления от min до max.

LogLocator

Размещает деления логарифмически от min до max.

MultipleLocator

Деления и диапазон являются кратными base; либо целое, либо число с плавающей точкой.

FixedLocator

Расположение делений фиксировано.

IndexLocator

Локер для графиков индексов (например, где x = range(len(y))).

NullLocator

Нет делений.

SymmetricalLogLocator

Локер для использования с симметричной логарифмической нормой; работает как LogLocator для части вне порога и добавляет 0, если внутри пределов.

AsinhLocator

Локер для использования с нормой asinh, пытаясь разместить деления приблизительно равномерно.

LogitLocator

Локер для логарифмической шкалы.

AutoMinorLocator

Локер для вспомогательных делений, когда ось линейная, а основные деления равномерно распределены. Разделяет интервал основных делений на указанное количество вспомогательных интервалов, по умолчанию 4 или 5 в зависимости от интервала основных делений.

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

Вы можете определить собственный локер, унаследовав от Locator. Вы должны переопределить метод __call__, который возвращает последовательность расположений, и, вероятно, захотите переопределить метод autoscale для установки пределов отображения по пределу данных.

Если вы хотите переопределить локер по умолчанию, используйте один из вышеперечисленных или пользовательский локер и передайте его экземпляру оси x или y. Соответствующие методы:

ax.xaxis.set_major_locator(xmajor_locator)
ax.xaxis.set_minor_locator(xminor_locator)
ax.yaxis.set_major_locator(ymajor_locator)
ax.yaxis.set_minor_locator(yminor_locator)

Локер вспомогательных делений по умолчанию — NullLocator, т. е. вспомогательные деления по умолчанию отсутствуют.

Примечание

Locator экземпляры не должны использоваться более чем с одной Axis или Axes. Поэтому вместо:

locator = MultipleLocator(5)
ax.xaxis.set_major_locator(locator)
ax2.xaxis.set_major_locator(locator)

сделайте следующее:

ax.xaxis.set_major_locator(MultipleLocator(5))
ax2.xaxis.set_major_locator(MultipleLocator(5))

Форматирование делений шкалы

Форматирование делений шкалы контролируется классами, унаследованными от Formatter. Форматировщик обрабатывает одно значение деления и возвращает строку оси.

NullFormatter

Нет меток на делениях.

FixedFormatter

Метки устанавливаются вручную.

FuncFormatter

Метки устанавливаются пользовательской функцией.

StrMethodFormatter

Используется метод форматирования строк format.

FormatStrFormatter

Используется строка форматирования в стиле sprintf.

ScalarFormatter

Форматировщик по умолчанию для чисел: автоматически выбирает строку форматирования.

LogFormatter

Форматировщик для логарифмических осей.

LogFormatterExponent

Форматирование значений для логарифмической оси с использованием exponent = log_base(value).

LogFormatterMathtext

Форматирование значений для логарифмической оси с использованием exponent = log_base(value) с использованием математического текста.

LogFormatterSciNotation

Форматирование значений для логарифмической оси в научной записи.

LogitFormatter

Форматировщик вероятностей.

EngFormatter

Форматирование меток в инженерной записи.

PercentFormatter

Форматирование меток в процентах.

Вы можете создать собственный форматировщик, унаследовав от базового класса Formatter, просто переопределив метод __call__. Класс форматировщика имеет доступ к отображаемому виду и пределам данных оси.

Для управления форматированием меток больших и малых делений используйте следующие методы:

ax.xaxis.set_major_formatter(xmajor_formatter)
ax.xaxis.set_minor_formatter(xminor_formatter)
ax.yaxis.set_major_formatter(ymajor_formatter)
ax.yaxis.set_minor_formatter(yminor_formatter)

В дополнение к экземпляру Formatter, set_major_formatter и set_minor_formatter также принимают str или функцию. Вход str будет заменён на автоматически сгенерированный StrMethodFormatter с введённым str. Для входных данных в виде функции будет сгенерирован и использован FuncFormatter с заданной функцией.

См. Основные и вспомогательные деления для примера настройки основных и вспомогательных делений. См. модуль matplotlib.dates для получения дополнительной информации и примеров использования локеров и форматировщиков дат.

classmatplotlib.ticker.AsinhLocator(linear_width, numticks=11, symthresh=0.2, base=10, subs=None)[source]

Bases: Locator

Локатор делений оси, специализированный для логарифмической шкалы.

Вероятность применения данной функции вне класса AsinhScale крайне мала.

Примечание

Данный API является предварительным и может быть изменён в будущем на основе отзывов пользователей.

Параметры:
linear_widthfloat

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

numticksint, по умолчанию: 11

Приблизительное число основных делений, которые поместятся на всей оси.

symthreshfloat, по умолчанию: 0.2

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

baseint, по умолчанию: 10

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

substuple, по умолчанию: None

Множители основания системы счисления, обычно используемые для дополнительных делений, например, (2, 5), когда основание равно 10.

set_params(numticks=None, symthresh=None, base=None, subs=None)[source]

Устанавливает параметры данного локатора.

tick_values(vmin, vmax)[source]

Возвращает значения размещенных делений, заданных vmin и vmax.

Примечание

Для получения позиций делений с автоматически определенными значениями vmin и vmax для соответствующей axis просто вызовите экземпляр локатора:

>>> print(type(loc))
<type 'Locator'>
>>> print(loc())
[1, 2, 3, 4]
classmatplotlib.ticker.AutoLocator[source]

Bases: MaxNLocator

Динамически находит позиции основных делений. Это фактически подкласс MaxNLocator с параметрами nbins = 'auto' и steps = [1, 2, 2.5, 5, 10].

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

classmatplotlib.ticker.AutoMinorLocator(n=None)[source]

Bases: Locator

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

n — число подразделений интервала между основными делениями; например, n=2 разместит одно дополнительное деление посередине между основными делениями.

Если n опущено или равно None, оно будет установлено в 5 или 4.

tick_values(vmin, vmax)[source]

Возвращает значения размещенных делений, заданных vmin и vmax.

Примечание

Для получения позиций делений с автоматически определенными значениями vmin и vmax для соответствующей axis просто вызовите экземпляр локатора:

>>> print(type(loc))
<type 'Locator'>
>>> print(loc())
[1, 2, 3, 4]
классmatplotlib.ticker.EngFormatter(unit='', places=None, sep=' ', *, usetex=None, useMathText=None)[source]

Базы: Formatter

Форматирование значений осей с использованием инженерных префиксов для представления степеней 1000, плюс указанный единицы, например, 10 МГц вместо 1e7.

Параметры:
unitstr, по умолчанию: ""

Символ единицы, подходящий для использования с однобуквенными обозначениями степеней 1000. Например, 'Hz' или 'm'.

placesint, по умолчанию: None

Точность отображения числа, заданная количеством цифр после десятичной точки (будет от одной до трёх цифр перед десятичной точкой). Если None, форматирование возвращается к плавающей точке '%g', которая отображает до 6 значимых цифр, т.е. эквивалентное значение для places изменяется от 0 до 5 включительно.

sepstr, по умолчанию: " "

Разделитель, используемый между значением и префиксом/единицей. Например, вы получите '3.14 мВ', если sep равно " " (по умолчанию) и '3.14мВ', если sep равно "". Помимо стандартного поведения, некоторые другие полезные варианты могут быть:

  • sep="" для непосредственного добавления префикса/единицы к значению;
  • sep="\N{THIN SPACE}" (U+2009);
  • sep="\N{NARROW NO-BREAK SPACE}" (U+202F);
  • sep="\N{NO-BREAK SPACE}" (U+00A0).
usetexbool, по умолчанию: rcParams["text.usetex"] (по умолчанию: False)

Включить/выключить использование математического режима TeX для рендеринга чисел в форматировщике.

useMathTextbool, по умолчанию: rcParams["axes.formatter.use_mathtext"] (по умолчанию: False)

Включить/выключить использование mathtext для рендеринга чисел в форматировщике.

ENG_PREFIXES={-24: 'y', -21: 'z', -18: 'a', -15: 'f', -12: 'p', -9: 'n', -6: 'µ', -3: 'm', 0: '', 3: 'k', 6: 'M', 9: 'G', 12: 'T', 15: 'P', 18: 'E', 21: 'Z', 24: 'Y'}
format_eng(num)[source]

Форматирование числа в инженерном формате, добавляя букву, представляющую степень 1000 исходного числа. Некоторые примеры:

>>> format_eng(0)        # for self.places = 0
'0'
>>> format_eng(1000000)  # for self.places = 1
'1.0 M'
>>> format_eng(-1e-6)  # for self.places = 2
'-1.00 µ'
get_useMathText()[source]
get_usetex()[source]
set_useMathText(val)[source]
set_usetex(val)[source]
свойствоuseMathText
свойствоusetex
классmatplotlib.ticker.FixedFormatter(seq)[source]

Базы: Formatter

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

Примечание

FixedFormatter следует использовать только вместе с FixedLocator. В противном случае метки могут оказаться в неожиданных позициях.

Установите последовательность seq строк, которые будут использованы в качестве меток.

get_offset()[source]
set_offset_string(ofs)[source]
классmatplotlib.ticker.FixedLocator(locs, nbins=None)[source]

Базы: Locator

Позиции делений фиксированы в locs. Если nbins не равно None, массив locs возможных позиций будет подвыбираться, чтобы количество делений было <= nbins +1. Подвыборка будет выполнена так, чтобы включить наименьшее абсолютное значение; например, если ноль включён в массив возможных позиций, то он гарантированно будет одним из выбранных делений.

set_params(nbins=None)[source]

Установка параметров локейтора.

tick_values(vmin, vmax)[source]

Возвращает позиции делений.

Примечание

Так как значения фиксированы, vmin и vmax в этом методе не используются.

классmatplotlib.ticker.FormatStrFormatter(fmt)[source]

Базы: Formatter

Использует строку форматирования старого стиля ('% оператор') для форматирования метки.

Строка форматирования должна содержать единственный переменный формат (%). Она будет применена к значению (а не позиции) метки.

Отрицательные числовые значения будут использовать тире, а не символ Unicode минус; для получения символа Unicode минус используйте mathtext, обернув спецификатор форматирования в $ (например, "$%g$").

классmatplotlib.ticker.Formatter[source]

Базы: TickHelper

Создает строку на основе значения и расположения метки.

статическийfix_minus(s)[source]

Некоторые классы могут захотеть заменить дефис для минуса соответствующим символом Unicode (U+2212) для стилистической корректности. Это вспомогательный метод для выполнения такой замены, когда это включено с помощью rcParams["axes.unicode_minus"] (по умолчанию: True).

format_data(value)[source]

Возвращает полное строковое представление значения без указания позиции.

format_data_short(value)[source]

Возвращает короткую строковую версию значения метки.

По умолчанию возвращает длинное значение, не зависящее от позиции.

format_ticks(values)[source]

Возвращает метки всех меток сразу.

get_offset()[source]
locs=[]
set_locs(locs)[source]

Устанавливает расположения меток.

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

классmatplotlib.ticker.FuncFormatter(func)[source]

Базы: Formatter

Использует пользовательскую функцию для форматирования.

Функция должна принимать два входных значения (значение метки x и позицию pos) и возвращать строку, содержащую соответствующую метку.

get_offset()[source]
set_offset_string(ofs)[source]
классmatplotlib.ticker.IndexLocator(base, offset)[source]

Базы: Locator

Размещает метку на каждом кратном некоторому основанию числу нарисованных точек, например, на каждой пятой точке. Предполагается, что вы выполняете индексное построение; т.е., ось имеет значения от 0 до длины данных. Это в основном полезно для меток x.

Размещает метки через каждые base данных, начиная с offset.

set_params(base=None, offset=None)[source]

Устанавливает параметры в этом локаторе

tick_values(vmin, vmax)[source]

Возвращает значения расположенных меток, учитывая vmin и vmax.

Примечание

Чтобы получить расположения меток со значениями vmin и vmax, автоматически определенными для соответствующего axis, просто вызовите экземпляр Locator:

>>> print(type(loc))
<type 'Locator'>
>>> print(loc())
[1, 2, 3, 4]
classmatplotlib.ticker.LinearLocator(numticks=None, presets=None)[source]

Bases: Locator

Определить расположение делений

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

Параметры:
numticksint или None, по умолчанию None

Количество делений. Если None, numticks = 11.

presetsсловарь или None, по умолчанию: None

Словарь, сопоставляющий (vmin, vmax) с массивом положений. Переопределяет numticks, если для текущего (vmin, vmax) есть запись.

propertynumticks
set_params(numticks=None, presets=None)[source]

Настройка параметров внутри этого локейтора.

tick_values(vmin, vmax)[source]

Возвращает значения расположенных делений, заданные vmin и vmax.

Примечание

Для получения положений делений с автоматически заданными значениями vmin и vmax для связанного axis просто вызовите экземпляр Locator:

>>> print(type(loc))
<type 'Locator'>
>>> print(loc())
[1, 2, 3, 4]
view_limits(vmin, vmax)[source]

Попытка интеллектуального выбора пределов отображения.

classmatplotlib.ticker.Locator[source]

Bases: TickHelper

Определение положений делений;

Обратите внимание, что один и тот же локейтор не следует использовать для нескольких Axis, поскольку локейтор хранит ссылки на данные оси и пределы отображения.

MAXTICKS=1000
nonsingular(v0, v1)[source]

Настройка диапазона для предотвращения особенностей.

Этот метод вызывается во время автоматического масштабирования с (v0, v1), установленным в пределы данных на оси, если ось содержит данные, или (-inf, +inf), если нет.

  • Если v0 == v1 (возможно, с некоторой погрешностью с плавающей запятой), этот метод возвращает расширенный интервал вокруг этого значения.
  • Если (v0, v1) == (-inf, +inf), этот метод возвращает соответствующие стандартные пределы отображения.
  • В противном случае, (v0, v1) возвращается без изменений.
raise_if_exceeds(locs)[source]

Записывает предупреждение уровня WARNING, если locs длиннее Locator.MAXTICKS.

Этот метод предназначен для вызова непосредственно перед возвратом locs из __call__, чтобы проинформировать пользователей в случае, если их Locator возвращает большое количество делений, что может привести к недостатку памяти в Matplotlib.

«Странное» имя метода восходит к временам, когда он вместо этого генерировал исключение.

set_params(**kwargs)[source]

Ничего не делает и генерирует предупреждение. Любой класс локейтора, не поддерживающий функцию set_params(), вызовет этот метод.

tick_values(vmin, vmax)[source]

Возвращает значения расположенных делений, заданные vmin и vmax.

Примечание

Для получения положений делений с автоматически заданными значениями vmin и vmax для связанного axis просто вызовите экземпляр Locator:

>>> print(type(loc))
<type 'Locator'>
>>> print(loc())
[1, 2, 3, 4]
view_limits(vmin, vmax)[source]

Выбор масштаба для диапазона от vmin до vmax.

Подклассы должны переопределить этот метод, чтобы изменить поведение локейтора.

классmatplotlib.ticker.LogFormatter(base=10.0, labelOnlyBase=False, minor_thresholds=None, linthresh=None)[source]

Базовый класс для форматирования делений на логарифмической или симметрично-логарифмической шкале.

Можно использовать напрямую или наследоваться от него.

Параметры:
basefloat, по умолчанию: 10.

Основание логарифма, используемое во всех вычислениях.

labelOnlyBasebool, по умолчанию: False

Если True, метки делений отображаются только при целых степенях основания. Обычно True для основных делений и False для вспомогательных.

minor_thresholds(подмножество, все), по умолчанию: (1, 0.4)

Если labelOnlyBase равно False, эти два числа управляют отображением делений, которые не являются целыми степенями основания; обычно это вспомогательные деления. Управляющим параметром является логарифм диапазона данных оси. В типичном случае, когда base равно 10, это количество десятичных разрядов, охватываемых осью, поэтому мы можем назвать его 'numdec'. Если numdec <= all, все вспомогательные деления будут иметь метки. Если all < numdec <= subset, то будут отображаться только некоторые вспомогательные деления, чтобы избежать перегрузки. Если numdec > subset, то вспомогательные деления не будут иметь меток.

linthreshNone или float, по умолчанию: None

Если используется симметрично-логарифмическая шкала, ее параметр linthresh должен быть указан здесь.

Примечания

Метод set_locs должен быть вызван, чтобы включить логику подмножества, управляемую параметром minor_thresholds.

В некоторых случаях, таких как цветовая шкала, нет различия между основными и вспомогательными делениями; расположения делений могут быть заданы вручную или с помощью локализации, которая помещает деления в целые степени основания и промежуточные значения. В этой ситуации отключите логику minor_thresholds, используя minor_thresholds=(np.inf, np.inf), чтобы все деления были помечены.

Чтобы отключить отображение вспомогательных делений, когда 'labelOnlyBase' равно False, используйте minor_thresholds=(0, 0). Это значение по умолчанию для стиля "классический".

Примеры

Чтобы отобразить подмножество вспомогательных делений, когда пределы просмотра охватывают до 2 десятичных разрядов, и все деления, когда масштаб уменьшен до 0,5 десятичных разрядов или меньше, используйте minor_thresholds=(2, 0.5).

Чтобы отобразить все вспомогательные деления, когда пределы просмотра охватывают до 1,5 десятичных разрядов, используйте minor_thresholds=(1.5, 1.5).

base(base)[source]

[Устарело] Изменить base для меток.

Предупреждение

Должно всегда соответствовать основанию, используемому для LogLocator

Примечания

Устарело начиная с версии 3.6: Используйте set_base() вместо этого.

format_data(value)[source]

Возвращает полное строковое представление значения без указания позиции.

format_data_short(value)[source]

Возвращает короткое строковое представление значения деления.

По умолчанию равно длинному значению, не зависящему от позиции.

label_minor(labelOnlyBase)[source]

[Устарело] Включить или отключить отображение вспомогательных делений.

Параметры:
labelOnlyBasebool

Если True, метки делений отображаются только при целых степенях основания.

Примечания

Устарело начиная с версии 3.6: Используйте set_label_minor() вместо этого.

set_base(base)[source]

Изменить base для меток.

Предупреждение

Должно всегда соответствовать основанию, используемому для LogLocator

set_label_minor(labelOnlyBase)[source]

Включить или отключить отображение вспомогательных делений.

Параметры:
labelOnlyBasebool

Если True, метки делений отображаются только при целых степенях основания.

set_locs(locs=None)[source]

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

Параметр locs игнорируется в текущем алгоритме.

классmatplotlib.ticker.LogFormatterExponent(base=10.0, labelOnlyBase=False, minor_thresholds=None, linthresh=None)[source]

Базы: LogFormatter

Форматирование значений для логарифмической оси с использованием exponent = log_base(value).

классmatplotlib.ticker.LogFormatterMathtext(base=10.0, labelOnlyBase=False, minor_thresholds=None, linthresh=None)[source]

Базы: LogFormatter

Форматирование значений для логарифмической оси с использованием exponent = log_base(value).

classmatplotlib.ticker.LogFormatterSciNotation(base=10.0, labelOnlyBase=False, minor_thresholds=None, linthresh=None)[source]

Bases: LogFormatterMathtext

Форматирование значений в соответствии с научной записью на логарифмической оси.

classmatplotlib.ticker.LogLocator(base=10.0, subs=(1.0,), numdecs=4, numticks=None)[source]

Bases: Locator

Определение меток для логарифмических осей.

Размещение меток на следующих позициях: subs[j] * base**i

Параметры:
basefloat, по умолчанию: 10.0

Основание логарифма, т.е. основные метки размещаются в точках base**n, где n - целое число.

subsNone или {'auto', 'all'} или последовательность чисел с плавающей точкой, по умолчанию: (1.0,)

Определяет кратные степеням основания, на которых следует размещать метки. По умолчанию ((1.0, )) метки размещаются только на целых степенях основания. Разрешенные строковые значения: 'auto' и 'all'. Оба этих значения используют алгоритм, основанный на предельных значениях отображения оси, чтобы определить, необходимо ли и как размещать метки между целыми степенями основания. С 'auto' метки размещаются только между целыми степенями; с 'all' целые степени также включаются. Значение None эквивалентно 'auto'.

numticksNone или целое число, по умолчанию: None

Максимальное количество меток на данной оси. По умолчанию (None) будет осуществляться интеллектуальный выбор, пока этот локатор не будет назначен на ось с помощью get_tick_space, в противном случае значение по умолчанию будет 9.

Размещение меток на позициях : subs[j] * base**i.

base(base)[source]

[Устарело] Установка основания логарифма (основная метка через base**i, i целое число).

Замечания

Устарело начиная с версии 3.6: Используйте set_params(base=...) вместо этого.

nonsingular(vmin, vmax)[source]

Корректировка диапазона для предотвращения особенностей.

Этот метод вызывается во время автоматического масштабирования с (v0, v1), установленным на пределы данных на оси, если ось содержит какие-либо данные, или (-inf, +inf), если данных нет.

  • Если v0 == v1 (возможно, с некоторыми ошибками плавающей точки), этот метод возвращает расширенный интервал вокруг этого значения.
  • Если (v0, v1) == (-inf, +inf), этот метод возвращает соответствующие пределы отображения по умолчанию.
  • В противном случае, (v0, v1) возвращается без изменений.
set_params(base=None, subs=None, numdecs=None, numticks=None)[source]

Установки параметров в этом локаторе.

subs(subs)[source]

[Устарело] Установка вспомогательных меток для логарифмического масштаба через каждые base**i*subs[j].

Замечания

Устарело начиная с версии 3.6: Используйте set_params(subs=...) вместо этого.

tick_values(vmin, vmax)[source]

Возвращение значений размещенных меток, заданных vmin и vmax.

Примечание

Для получения позиций меток со значениями vmin и vmax, определенными автоматически для связанной axis, просто вызовите экземпляр Локатора:

>>> print(type(loc))
<type 'Locator'>
>>> print(loc())
[1, 2, 3, 4]
view_limits(vmin, vmax)[source]

Попытка интеллектуального выбора пределов отображения.

END_OF_DOCUMENT_MARKER
классmatplotlib.ticker.LogitFormatter(*, use_overline=False, one_half='\\frac{1}{2}', minor=False, minor_threshold=25, minor_number=6)[source]

Основы: Formatter

Форматировщик вероятностей (используя математический текст).

Параметры:
use_overlinebool, по умолчанию: False

Если x > 1/2, где x = 1-v, указывает, следует ли отображать x как $overline{v}$. По умолчанию отображается $1-v$.

one_halfstr, по умолчанию: r"frac{1}{2}"

Строка, используемая для представления 1/2.

minorbool, по умолчанию: False

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

minor_thresholdint, по умолчанию: 25

Максимальное количество меток для подписи некоторых малых делений. Этот параметр не оказывает никакого влияния, если minor равен False.

minor_numberint, по умолчанию: 6

Количество делений, которые подписываются, когда количество делений меньше порога.

format_data_short(value)[source]

Возвращает короткую строковую версию значения деления.

По умолчанию возвращает длинное значение, независимое от позиции.

set_locs(locs)[source]

Устанавливает расположение делений.

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

set_minor_number(minor_number)[source]

Устанавливает количество малых делений, которые следует подписывать, когда подписываются некоторые малые деления.

Параметры:
minor_numberint

Количество делений, которые подписываются, когда количество делений меньше порога.

set_minor_threshold(minor_threshold)[source]

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

Параметры:
minor_thresholdint

Максимальное количество положений для подписи некоторых малых делений. Этот параметр не оказывает никакого влияния, если minor равен False.

set_one_half(one_half)[source]

Устанавливает способ отображения одной половины.

one_halfstr, по умолчанию: r"frac{1}{2}"

Строка, используемая для представления 1/2.

use_overline(use_overline)[source]

Переключает режим отображения с чертой для подписи p>1/2.

Параметры:
use_overlinebool, по умолчанию: False

Если x > 1/2, где x = 1-v, указывает, следует ли отображать x как $overline{v}$. По умолчанию отображается $1-v$.

классmatplotlib.ticker.LogitLocator(minor=False, *, nbins='auto')[source]

Основы: MaxNLocator

Определяет расположения делений для логарифмических осей

Размещает деления в местах логарифмических значений

Параметры:
nbinsint или 'auto', необязательно

Количество делений. Используется только если minor равен False.

minorbool, по умолчанию: False

Указывает, предназначен ли данный локализатор для малых делений или нет.

свойствоminor
nonsingular(vmin, vmax)[source]

Корректирует диапазон по мере необходимости для избежания особенностей.

Этот метод вызывается во время автоматического масштабирования, с (v0, v1), установленным в пределы данных на осях, если на осях есть данные, или (-inf, +inf), если нет.

  • Если v0 == v1 (возможно, с учетом некоторого допуска с плавающей запятой), этот метод возвращает расширенный интервал вокруг этого значения.
  • Если (v0, v1) == (-inf, +inf), этот метод возвращает соответствующие пределы просмотра по умолчанию.
  • В противном случае (v0, v1) возвращается без изменений.
set_params(minor=None, **kwargs)[source]

Устанавливает параметры внутри этого локализатора.

tick_values(vmin, vmax)[source]

Возвращает значения размеченных делений, заданные vmin и vmax.

Примечание

Чтобы получить расположения делений с автоматически заданными значениями vmin и vmax для связанной axis, просто вызовите экземпляр локализатора:

>>> print(type(loc))
<type 'Locator'>
>>> print(loc())
[1, 2, 3, 4]
classmatplotlib.ticker.MaxNLocator(nbins=None, **kwargs)[source]

Bases: Locator

Находит подходящие метки с не более чем nbins + 1 меткой в пределах области просмотра. Метки за пределами области просмотра добавляются для поддержки автоматического масштабирования.

Параметры:
nbinsint или 'auto', по умолчанию: 10

Максимальное количество интервалов; на один меньше, чем максимальное количество меток. Если строка 'auto', количество интервалов будет определено автоматически на основе длины оси.

stepsпоследовательность, необязательно

Последовательность подходящих чисел, начиная с 1 и заканчивая 10; например, [1, 2, 4, 5, 10], где значения являются допустимыми кратными меток. Т.е. для примера, 20, 40, 60 были бы допустимым набором меток, так же как 0,4, 0,6, 0,8, потому что они являются кратными 2. Однако 30, 60, 90 не будут разрешены, потому что 3 не появляется в списке шагов.

integerbool, по умолчанию: False

Если True, метки будут принимать только целые значения, при условии, что по крайней мере min_n_ticks целых чисел находятся в пределах области просмотра.

symmetricbool, по умолчанию: False

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

prune{'lower', 'upper', 'both', None}, по умолчанию: None

Удалить крайние метки — полезно для наложенных или связанных графиков, где верхняя метка одной оси перекрывает нижнюю метку оси выше нее, прежде всего, когда rcParams["axes.autolimit_mode"] (по умолчанию: 'data') является 'round_numbers'. Если prune=='lower', самая маленькая метка будет удалена. Если prune == 'upper', самая большая метка будет удалена. Если prune == 'both', самые большие и самые маленькие метки будут удалены. Если prune равно None, никакие метки не будут удалены.

min_n_ticksint, по умолчанию: 2

Смягчить ограничения nbins и integer при необходимости, чтобы получить это минимальное количество меток.

default_params={'integer': False, 'min_n_ticks': 2, 'nbins': 10, 'prune': None, 'steps': None, 'symmetric': False}
set_params(**kwargs)[source]

Устанавливает параметры для этого локатора.

Параметры:
nbinsint или 'auto', необязательно

см. MaxNLocator

stepsпоследовательность, необязательно

см. MaxNLocator

integerbool, необязательно

см. MaxNLocator

symmetricbool, необязательно

см. MaxNLocator

prune{'lower', 'upper', 'both', None}, необязательно

см. MaxNLocator

min_n_ticksint, необязательно

см. MaxNLocator

tick_values(vmin, vmax)[source]

Возвращает значения расположенных меток, заданных vmin и vmax.

Примечание

Чтобы получить расположения меток со значениями vmin и vmax, определенными автоматически для связанной axis, просто вызовите экземпляр локатора:

>>> print(type(loc))
<type 'Locator'>
>>> print(loc())
[1, 2, 3, 4]
view_limits(dmin, dmax)[source]

Выбирает масштаб для диапазона от vmin до vmax.

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

classmatplotlib.ticker.MultipleLocator(base=1.0)[source]

Bases: Locator

Устанавливает метку на каждом целом кратном base в пределах интервала просмотра.

set_params(base)[source]

Установка параметров внутри этого локатора.

tick_values(vmin, vmax)[source]

Возвращает значения расположенных меток, заданных vmin и vmax.

Примечание

Чтобы получить расположения меток со значениями vmin и vmax, определенными автоматически для связанной axis, просто вызовите экземпляр локатора:

>>> print(type(loc))
<type 'Locator'>
>>> print(loc())
[1, 2, 3, 4]
view_limits(dmin, dmax)[source]

Устанавливает пределы просмотра до ближайших кратных base, которые содержат данные.

classmatplotlib.ticker.NullFormatter[source]

Bases: Formatter

Всегда возвращает пустую строку.

END_OF_DOCUMENT_MARKER
классmatplotlib.ticker.NullLocator[source]

Базы: Locator

Нет делений

tick_values(vmin, vmax)[source]

Возвращает расположение делений.

Примечание

Так как значения равны Null, vmin и vmax в этом методе не используются.

классmatplotlib.ticker.PercentFormatter(xmax=100, decimals=None, symbol='%', is_latex=False)[source]

Базы: Formatter

Форматирование чисел в виде процента.

Параметры:
xmaxfloat

Определяет, как число преобразуется в процент. xmax — значение данных, соответствующее 100%. Проценты вычисляются как x / xmax * 100. Таким образом, если данные уже масштабированы в проценты, xmax будет равен 100. Другая распространённая ситуация — когда xmax равен 1,0.

decimalsNone или int

Количество знаков после запятой. Если None (по умолчанию), количество знаков вычисляется автоматически.

symbolstr или None

Строка, которая будет добавлена к метке. Может быть None или пустой, чтобы указать, что символ не должен использоваться. Специальные символы LaTeX в symbol экранируются, когда включён режим LaTeX, если только is_latex не равно True.

is_latexbool

Если False, зарезервированные символы LaTeX в symbol будут экранированы.

convert_to_pct(x)[source]
format_pct(x, display_range)[source]

Форматирование числа в виде числа процентов с правильным количеством знаков после запятой и добавлением символа процента, если он есть.

Если self.decimals равно None, количество цифр после запятой устанавливается на основе display_range оси следующим образом:

display_range

decimals

пример

>50

0

x = 34.5 => 35%

>5

1

x = 34.5 => 34,5%

>0,5

2

x = 34.5 => 34,50%

...

...

...

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

свойствоsymbol

Настроенный символ процента в виде строки.

Если LaTeX включён с помощью rcParams["text.usetex"] (по умолчанию: False), специальные символы {'#', '$', '%', '&', '~', '_', '^', '\', '{', '}'} в строке автоматически экранируются.

классmatplotlib.ticker.ScalarFormatter(useOffset=None, useMathText=None, useLocale=None)[source]
END_OF_DOCUMENT_MARKER

Основания: Formatter

Форматирование значений меток как числа.

Параметры:
useOffsetbool или float, по умолчанию: rcParams["axes.formatter.useoffset"] (по умолчанию: True)

Использовать ли обозначение смещения. См. set_useOffset.

useMathTextbool, по умолчанию: rcParams["axes.formatter.use_mathtext"] (по умолчанию: False)

Использовать ли форматирование математических выражений. См. set_useMathText.

useLocalebool, по умолчанию: rcParams["axes.formatter.use_locale"] (по умолчанию: False).

Использовать ли настройки локали для разделителя десятичных знаков и знака плюс. См. set_useLocale.

Примечания

Помимо перечисленных выше параметров, форматирование научного и десятичного представления можно настроить с помощью set_scientific и set_powerlimits.

Обозначение смещения и научная запись

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

  • Научная запись разделяет порядок величины, т. е. множительный масштабный коэффициент, например, 1e6.
  • Обозначение смещения отделяет аддитивную константу, например, +1e6. Обозначение смещения всегда предваряется знаком + или - и, таким образом, отличается от метки порядка величины.

Следующий график с пределами оси x от 1_000_000 до 1_000_010 иллюстрирует различные форматы. Обратите внимание на метки на правом краю оси x.

(Source code, png)

../_images/ticker_api-1.png
format_data(value)[source]

Возвращает полное строковое представление значения без указания позиции.

format_data_short(value)[source]

Возвращает короткое строковое представление значения метки.

По умолчанию используется полное значение без указания позиции.

get_offset()[source]

Возвращает научную запись, плюс смещение.

get_useLocale()[source]

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

См. также

ScalarFormatter.set_useLocale
get_useMathText()[source]

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

См. также

ScalarFormatter.set_useMathText
get_useOffset()[source]

Возвращает значение, определяющее, активен ли автоматический режим для обозначения смещения.

Возвращает True, если set_useOffset(True); возвращает False, если смещение было задано явно, например, set_useOffset(1000).

См. также

ScalarFormatter.set_useOffset
set_locs(locs)[source]

Устанавливает расположения меток.

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

set_powerlimits(lims)[source]

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

Параметры:
lims(int, int)

Кортеж (min_exp, max_exp), содержащий степени 10, которые определяют порог переключения. Для числа, представимого как \(a \times 10^\mathrm{exp}\) с \(1 <= |a| < 10\), научная запись будет использоваться, если exp <= min_exp или exp >= max_exp.

Значения по умолчанию для пределов контролируются rcParams["axes.formatter.limits"] (по умолчанию: [-5, 6]).

В частности, числа со значением exp, равным порогам, записываются в научной записи.

Обычно min_exp будет отрицательным, а max_exp — положительным.

Например, formatter.set_powerlimits((-3, 4)) предоставит следующие форматы: \(1 \times 10^{-3}, 9.9 \times 10^{-3}, 0.01,\) \(9999, 1 \times 10^4\).

См. также

ScalarFormatter.set_scientific
set_scientific(b)[source]

Включить или выключить научную запись.

См. также

ScalarFormatter.set_powerlimits
set_useLocale(val)[source]

Устанавливает значение, определяющее, использовать ли настройки локали для разделителя десятичных знаков и знака плюс.

Параметры:
valbool или None

None сбрасывает значение до rcParams["axes.formatter.use_locale"] (по умолчанию: False).

set_useMathText(val)[source]

Установить, использовать ли форматирование математических формул.

Если включено, научная запись форматируется как \(1.2 \times 10^3\).

Параметры:
valbool или None

None сбрасывает значение до rcParams["axes.formatter.use_mathtext"] (по умолчанию: False).

set_useOffset(val)[source]

Установить, использовать ли обозначение смещения.

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

Параметры:
valbool или float
  • Если False, не использовать обозначение смещения.
  • Если True (=автоматический режим), использовать обозначение смещения, если оно может значительно сократить остаточные числа. Точное поведение контролируется rcParams["axes.formatter.offset_threshold"] (по умолчанию: 4).
  • Если число, принудительно установить смещение данного значения.

Примеры

При активном обозначении смещения значения

100_000, 100_002, 100_004, 100_006, 100_008

будут отформатированы как 0, 2, 4, 6, 8 плюс смещение +1e5, которое будет выведено на краю оси.

propertyuseLocale

Возвращает, используются ли настройки локали для форматирования.

См. также

ScalarFormatter.set_useLocale
propertyuseMathText

Возвращает, используется ли форматирование математических формул.

См. также

ScalarFormatter.set_useMathText
propertyuseOffset

Возвращает, активен ли автоматический режим для обозначения смещения.

Возвращает True, если set_useOffset(True); возвращает False, если было установлено явное смещение, например, set_useOffset(1000).

См. также

ScalarFormatter.set_useOffset
classmatplotlib.ticker.StrMethodFormatter(fmt)[source]

Основывается на Formatter

Использует строку форматирования нового стиля (как используется в str.format) для форматирования отметки.

Поле, используемое для значения отметки, должно быть помечено как x, а поле, используемое для положения отметки, должно быть помечено как pos.

classmatplotlib.ticker.SymmetricalLogLocator(transform=None, subs=None, linthresh=None, base=None)[source]

Основывается на Locator

Определяет расположение отметок для симметричных логарифмических осей.

Параметры:
transformSymmetricalLogTransform, необязательно

Если установлено, определяет основу и linthresh симметричного логарифмического преобразования.

base, linthreshfloat, необязательно

Основа и linthresh симметричного логарифмического преобразования, как описано для SymmetricalLogScale. Эти параметры используются только в случае, если transform не установлен.

subsпоследовательность float, по умолчанию: [1]

Множители целых степеней основания, где размещаются отметки, т.е. отметки размещаются в [sub * base**i for i in ... for sub in subs].

Примечания

Должно быть указано либо transform, либо оба base и linthresh.

set_params(subs=None, numticks=None)[source]

Установка параметров внутри данного локетора.

tick_values(vmin, vmax)[source]

Возвращает значения размещенных отметок, заданные vmin и vmax.

Примечание

Чтобы получить расположение отметок со значениями vmin и vmax, определёнными автоматически для связанной axis, просто вызовите экземпляр локетора:

>>> print(type(loc))
<type 'Locator'>
>>> print(loc())
[1, 2, 3, 4]
view_limits(vmin, vmax)[source]

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

classmatplotlib.ticker.TickHelper[source]

Основывается на object

axis=None
create_dummy_axis(**kwargs)[source]
set_axis(axis)[source]
Inheritance diagram of matplotlib.ticker

© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.7.5/api/ticker_api.html

Spec-Zone.ru

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