matplotlib.scale
Масштабирования определяют распределение значений данных на оси, например, логарифмическое масштабирование. Они определяются как подклассы ScaleBase.
См. также axes.Axes.set_xscale и примеры масштабирования в документации.
См. Пользовательский масштаб для полного примера определения пользовательского масштаба.
Matplotlib также поддерживает неразделимые преобразования, которые действуют как на Axis одновременно. Они известны как проекции и определены в matplotlib.projections.
- classmatplotlib.scale.FuncScale(axis, functions)[source]
-
Базы:
matplotlib.scale.ScaleBaseОбеспечивает произвольный масштаб с функцией, заданной пользователем, для оси.
- Параметры
-
-
axis
Axis -
Ось для масштабирования.
- functions(callable, callable)
-
Двойка вызываемых функций: прямая и обратная для масштабирования. Прямая функция должна быть монотонной.
Обе функции должны иметь сигнатуру:
def forward(values: array-like) -> array-like
-
axis
- get_transform()[source]
-
Возвращает
FuncTransform, связанное с этим масштабом.
- name='function'
- set_default_locators_and_formatters(axis)[source]
-
Устанавливает меток и форматеров axis в экземпляры, подходящие для данного масштаба.
- classmatplotlib.scale.FuncScaleLog(axis, functions, base=10)[source]
-
Базы:
matplotlib.scale.LogScaleОбеспечивает произвольный масштаб с функцией, заданной пользователем, для оси, а затем помещает на логарифмическую ось.
- Параметры
-
-
axis
matplotlib.axis.Axis -
Ось для масштабирования.
- functions(callable, callable)
-
Двойка вызываемых функций: прямая и обратная для масштабирования. Прямая функция должна быть монотонной.
Обе функции должны иметь сигнатуру:
def forward(values: array-like) -> array-like
- basefloat, default: 10
-
Логарифмическая основа масштаба.
-
axis
- propertybase
- get_transform()[source]
-
Возвращает
Transform, связанное с этим масштабом.
- name='functionlog'
- classmatplotlib.scale.FuncTransform(forward, inverse)[source]
-
Bases:
matplotlib.transforms.TransformПростой преобразователь, принимающий произвольную функцию для прямого и обратного преобразования.
- Параметры
-
- forwardcallable
-
Функция прямого преобразования. Эта функция должна иметь обратную функцию и, для лучшей работы, быть монотонной. Она должна иметь следующий сигнатур:
def forward(values: array-like) -> array-like
- inversecallable
-
Обратная функция функции прямого преобразования. Сигнатура такая же, как
forward.
- has_inverse=True
-
True, если для этого преобразования существует соответствующее обратное преобразование.
- input_dims=1
-
Число входных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.
- inverted()[source]
-
Возвращает соответствующее обратное преобразование.
Это содержит
x == self.inverted().transform(self.transform(x)).Значение, возвращаемое этим методом, следует рассматривать как временное. Обновление self не вызывает соответствующего обновления его обратного экземпляра.
- is_separable=True
-
True, если это преобразование является разделимым по осям x и y.
- output_dims=1
-
Число выходных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.
- transform_non_affine(values)[source]
-
Применяет только часть преобразования, не являющуюся аффинной.
transform(values)всегда эквивалентноtransform_affine(transform_non_affine(values)).В неаффинных преобразованиях это, как правило, эквивалентно
transform(values). В аффинных преобразованиях это всегда недействие.- Параметры
-
- valuesмассив
-
Вводные значения в виде массива NumPy длины
input_dimsили формы (N xinput_dims).
- Возвращает
-
- массив
-
Выходные значения в виде массива NumPy длины
input_dimsили формы (N xoutput_dims), в зависимости от входных данных.
- classmatplotlib.scale.InvertedLogTransform(base)[source]
-
Bases:
matplotlib.transforms.Transform- Параметры
-
- сокращенное_наименованиеstr
-
Строка, представляющая «название» преобразования. Название не имеет значения, кроме повышения читаемости
str(transform)при DEBUG=True.
- has_inverse=True
-
True, если для этого преобразования существует соответствующее обратное преобразование.
- input_dims=1
-
Число входных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.
- inverted()[source]
-
Возвращает соответствующее обратное преобразование.
Это содержит
x == self.inverted().transform(self.transform(x)).Значение, возвращаемое этим методом, следует рассматривать как временное. Обновление self не вызывает соответствующего обновления его обратного экземпляра.
- is_separable=True
-
True, если это преобразование является разделимым по осям x и y.
- output_dims=1
-
Число выходных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.
- transform_non_affine(a)[source]
-
Применяет только часть преобразования, не являющуюся аффинной.
transform(values)всегда эквивалентноtransform_affine(transform_non_affine(values)).В неаффинных преобразованиях это, как правило, эквивалентно
transform(values). В аффинных преобразованиях это всегда недействие.- Параметры
-
- valuesмассив
-
Вводные значения в виде массива NumPy длины
input_dimsили формы (N xinput_dims).
- Возвращает
-
- массив
-
Выходные значения в виде массива NumPy длины
input_dimsили формы (N xoutput_dims), в зависимости от входных данных.
- классmatplotlib.scale.InvertedSymmetricalLogTransform(base, linthresh, linscale)[source]
-
Базы:
matplotlib.transforms.Transform- Параметры
-
- shorthand_namestr
-
Строка, представляющая "название" преобразования. Название не имеет значения, кроме как для повышения удобочитаемости
str(transform)при DEBUG=True.
- has_inverse=True
-
True, если у этого преобразования есть соответствующее обратное преобразование.
- input_dims=1
-
Количество входных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.
- inverted()[source]
-
Возвращает соответствующее обратное преобразование.
Содержит
x == self.inverted().transform(self.transform(x)).Результат этого метода следует рассматривать как временный. Обновление self не приводит к соответствующему обновлению его обратного копии.
- is_separable=True
-
True, если это преобразование разделимо по x- и y- измерениям.
- output_dims=1
-
Количество выходных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.
- transform_non_affine(a)[source]
-
Применить только неаффинную часть этого преобразования.
transform(values)всегда эквивалентноtransform_affine(transform_non_affine(values)).В неаффинных преобразованиях это обычно эквивалентно
transform(values). В аффинных преобразованиях это всегда бездействующая операция.- Параметры
-
- значениямассив
-
Входные значения в виде массива NumPy длины
input_dimsили формы (N xinput_dims).
- Возвращает
-
- массив
-
Выходные значения в виде массива NumPy длины
input_dimsили формы (N xoutput_dims), в зависимости от входа.
- классmatplotlib.scale.LinearScale(axis)[source]
-
Базы:
matplotlib.scale.ScaleBaseПо умолчанию линейная шкала.
- get_transform()[source]
-
Возвращает преобразование для линейного масштабирования, которое представляет собой просто
IdentityTransform.
- name='linear'
- set_default_locators_and_formatters(axis)[source]
-
Устанавливает локаторы и форматировщики axis в экземпляры, подходящие для этой шкалы.
- классmatplotlib.scale.LogScale(axis, *, base=10, subs=None, nonpositive='clip')[source]
-
Базы:
matplotlib.scale.ScaleBaseСтандартная логарифмическая шкала. Принимаются меры, чтобы отображать только положительные значения.
- Параметры
-
-
axis
Axis -
Ось для шкалы.
- basefloat, по умолчанию: 10
-
Основание логарифма.
- nonpositive{'clip', 'mask'}, по умолчанию: 'clip'
-
Определяет поведение для неположительных значений. Они могут быть либо замаскированы как недопустимые, либо обрезаны до очень малого положительного числа.
- subsпоследовательность int, по умолчанию: None
-
Местоположение подтикеток между каждым основным тиком. Например, в шкале log10,
[2, 3, 4, 5, 6, 7, 8, 9]разместит 8 логарифмически распределенных подтикеток между каждым основным тиком.
-
axis
- свойствоbase
- get_transform()[source]
-
Возвращает
LogTransform, связанный с этой шкалой.
- limit_range_for_scale(vmin, vmax, minpos)[source]
-
Ограничить область положительными значениями.
- name='log'
- set_default_locators_and_formatters(axis)[source]
-
Устанавливает локаторы и форматировщики axis в экземпляры, подходящие для этой шкалы.
- classmatplotlib.scale.LogTransform(base, nonpositive='clip')[source]
-
Bases:
matplotlib.transforms.Transform- Parameters
-
- shorthand_namestr
-
Строка, представляющая "имя" преобразования. Имя не имеет значения, кроме улучшения читаемости
str(transform)при DEBUG=True.
- has_inverse=True
-
True, если для этого преобразования существует обратное преобразование.
- input_dims=1
-
Количество входных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.
- inverted()[source]
-
Возвращает соответствующее обратное преобразование.
Содержит
x == self.inverted().transform(self.transform(x)).Результат этого метода следует рассматривать как временный. Обновление self не вызывает соответствующего обновления его обратного копирования.
- is_separable=True
-
True, если это преобразование разделимо по осям x и y.
- output_dims=1
-
Количество выходных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.
- transform_non_affine(a)[source]
-
Применяет только неаффинную часть этого преобразования.
transform(values)всегда эквивалентноtransform_affine(transform_non_affine(values)).В неаффинных преобразованиях это обычно эквивалентно
transform(values). В аффинных преобразованиях это всегда является пустым действием.- Parameters
-
- valuesarray
-
Вводные значения в виде массива NumPy длиной
input_dimsили формы (N xinput_dims).
- Returns
-
- array
-
Выходные значения в виде массива NumPy длиной
input_dimsили формы (N xoutput_dims), в зависимости от входных данных.
- classmatplotlib.scale.LogisticTransform(nonpositive='mask')[source]
-
Bases:
matplotlib.transforms.Transform- Parameters
-
- shorthand_namestr
-
Строка, представляющая "имя" преобразования. Имя не имеет значения, кроме улучшения читаемости
str(transform)при DEBUG=True.
- has_inverse=True
-
True, если для этого преобразования существует обратное преобразование.
- input_dims=1
-
Количество входных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.
- inverted()[source]
-
Возвращает соответствующее обратное преобразование.
Содержит
x == self.inverted().transform(self.transform(x)).Результат этого метода следует рассматривать как временный. Обновление self не вызывает соответствующего обновления его обратного копирования.
- is_separable=True
-
True, если это преобразование разделимо по осям x и y.
- output_dims=1
-
Количество выходных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.
- transform_non_affine(a)[source]
-
лог-преобразование (основание 10)
- classmatplotlib.scale.LogitScale(axis, nonpositive='mask', *, one_half='\x0crac{1}{2}', use_overline=False)[source]
-
Bases:
matplotlib.scale.ScaleBaseЛогарифмическая шкала для данных между нулём и единицей, не включая их.
Эта шкала похожа на логарифмическую шкалу близко к нулю и единице, и почти линейна около 0,5. Она отображает интервал ]0, 1[ на ]-infty, +infty[.
- Параметры
-
-
axis
matplotlib.axis.Axis -
В настоящее время не используется.
- nonpositive{'mask', 'clip'}
-
Определяет поведение для значений за пределами открытого интервала ]0, 1[. Они могут быть замаскированы как недопустимые или ограничены значением, очень близким к 0 или 1.
- use_overlinebool, по умолчанию: False
-
Указывает на использование обозначения выживаемости (overline{x}) вместо стандартного обозначения (1-x) для вероятностей, близких к единице.
- one_halfstr, по умолчанию: r"frac{1}{2}"
-
Строка, используемая для форматирования меток, чтобы представить 1/2.
-
axis
- get_transform()[source]
-
Возвращает
LogitTransform, связанный с этой шкалой.
- limit_range_for_scale(vmin, vmax, minpos)[source]
-
Ограничение области значениями между 0 и 1 (исключая их).
- name='logit'
- set_default_locators_and_formatters(axis)[source]
-
Установка локатоторов и форматировщиков axis в экземпляры, подходящие для этой шкалы.
- classmatplotlib.scale.LogitTransform(nonpositive='mask')[source]
-
Bases:
matplotlib.transforms.Transform- Параметры
-
- shorthand_namestr
-
Строка, представляющая «имя» преобразования. Имя не имеет значения, кроме улучшения читаемости
str(transform)при DEBUG=True.
- has_inverse=True
-
True, если у этого преобразования есть соответствующее обратное преобразование.
- input_dims=1
-
Количество входных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.
- inverted()[source]
-
Возвращает соответствующее обратное преобразование.
В нём
x == self.inverted().transform(self.transform(x)).Результат этого метода следует рассматривать как временный. Обновление self не приводит к соответствующему обновлению его инвертированной копии.
- is_separable=True
-
True, если это преобразование разделимо по x- и y- измерениям.
- output_dims=1
-
Количество выходных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.
- transform_non_affine(a)[source]
-
Логарифмическое преобразование (основание 10), замаскированное или ограниченное.
- classmatplotlib.scale.ScaleBase(axis)[source]
-
Bases:
objectБазовый класс для всех шкал.
Шкалы — это разделимые преобразования, работающие с одной осью.
Подклассы должны переопределять
name-
Имя шкалы.
get_transform()-
Метод, возвращающий объект
Transform, который преобразует координаты данных в отмасштабированные координаты. Это преобразование должно быть обратимым, чтобы, например, координаты указателя мыши можно было преобразовать обратно в координаты данных. set_default_locators_and_formatters()-
Метод, который устанавливает значения по умолчанию для меток и форматов для
Axis, использующего эту шкалу. limit_range_for_scale()-
Необязательный метод, который «исправляет» диапазон осей до приемлемых значений, например, ограничивая логарифмические оси положительными значениями.
Создать новую шкалу.
Примечания
Следующее примечание предназначено для разработчиков шкал.
По соображениям обратной совместимости, шкалы принимают объект
Axisв качестве первого аргумента. Однако этот аргумент не должен использоваться: один объект шкалы должен быть пригоден для использования несколькимиAxisодновременно.- get_transform()[source]
-
Возвращает объект
Transform, связанный с этой шкалой.
- limit_range_for_scale(vmin, vmax, minpos)[source]
-
Возвращает диапазон vmin, vmax, ограниченный областью, поддерживаемой этой шкалой (если таковая имеется).
minpos должно быть минимальным положительным значением в данных. Это используется логарифмическими шкалами для определения минимального значения.
- set_default_locators_and_formatters(axis)[source]
-
Устанавливает метки и форматы axis в экземпляры, подходящие для этой шкалы.
- classmatplotlib.scale.SymmetricalLogScale(axis, *, base=10, linthresh=2, subs=None, linscale=1)[source]
-
Bases:
matplotlib.scale.ScaleBaseСимметричная логарифмическая шкала — это логарифмическая шкала как в положительном, так и в отрицательном направлениях от начала координат.
Поскольку значения, близкие к нулю, стремятся к бесконечности, необходимо иметь диапазон вокруг нуля, который является линейным. Параметр linthresh позволяет пользователю задать размер этого диапазона (-linthresh, linthresh).
- Parameters
-
- basefloat, default: 10
-
Основание логарифма.
- linthreshfloat, default: 2
-
Определяет диапазон
(-x, x), в пределах которого график является линейным. Это позволяет избежать бесконечности графика около нуля. - subssequence of int
-
Где разместить дополнительные метки между каждой основной меткой. Например, в логарифмической шкале по основанию 10:
[2, 3, 4, 5, 6, 7, 8, 9]разместит 8 дополнительных меток, распределенных логарифмически между каждой основной меткой. - linscalefloat, optional
-
Это позволяет растянуть линейный диапазон
(-linthresh, linthresh)относительно логарифмического диапазона. Его значение — количество десятичных разрядов, используемых для каждой половины линейного диапазона. Например, когда linscale == 1.0 (по умолчанию), пространство, используемое для положительной и отрицательной половин линейного диапазона, будет равно одному десятичному разряду в логарифмическом диапазоне.
Создать новую шкалу.
Примечания
Следующее примечание предназначено для разработчиков шкал.
По соображениям обратной совместимости, шкалы принимают объект
Axisв качестве первого аргумента. Однако этот аргумент не должен использоваться: один объект шкалы должен быть пригоден для использования несколькимиAxisодновременно.- propertybase
- get_transform()[source]
-
Возвращает
SymmetricalLogTransform, связанный с этой шкалой.
- propertylinscale
- propertylinthresh
- name='symlog'
- set_default_locators_and_formatters(axis)[source]
-
Устанавливает метки и форматы axis в экземпляры, подходящие для этой шкалы.
- classmatplotlib.scale.SymmetricalLogTransform(base, linthresh, linscale)[source]
-
Bases:
matplotlib.transforms.Transform- Parameters
-
- shorthand_namestr
-
Строка, представляющая «название» преобразования. Название не имеет значения, кроме улучшения читабельности
str(transform)при DEBUG=True.
- has_inverse=True
-
True, если для этого преобразования существует обратное преобразование.
- input_dims=1
-
Количество входных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.
- inverted()[source]
-
Возвращает соответствующее обратное преобразование.
Сохраняет
x == self.inverted().transform(self.transform(x)).Результат этого метода следует рассматривать как временный. Обновление self не вызывает соответствующего обновления его инвертированной копии.
- is_separable=True
-
True, если это преобразование разделимо по измерениям x и y.
- output_dims=1
-
Количество выходных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.
- transform_non_affine(a)[source]
-
Применяет только неаффинную часть этого преобразования.
transform(values)всегда эквивалентноtransform_affine(transform_non_affine(values)).В неаффинных преобразованиях это обычно эквивалентно
transform(values). В аффинных преобразованиях это всегда недействие.- Parameters
-
- значенияarray
-
Входящие значения как массив NumPy длиной
input_dimsили формы (N xinput_dims).
- Returns
-
- array
-
Выходные значения как массив NumPy длиной
input_dimsили формы (N xoutput_dims), в зависимости от входных данных.
- matplotlib.scale.get_scale_names()[source]
-
Возвращает имена доступных шкал.
- matplotlib.scale.register_scale(scale_class)[source]
-
Регистрация нового типа шкалы.
- Parameters
-
-
scale_classподкласс
ScaleBase -
Регистрируемая шкала.
-
scale_classподкласс
- matplotlib.scale.scale_factory(scale, axis, **kwargs)[source]
-
Возвращает класс шкалы по имени.
- Parameters
-
- scale{'function', 'functionlog', 'linear', 'log', 'logit', 'symlog'}
-
axis
matplotlib.axis.Axis
© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.5.1/api/scale_api.html