Spec-Zone.ru › Matplotlib 2.2

units

matplotlib.units

Классы здесь обеспечивают поддержку использования пользовательских классов с Matplotlib, например, тех, которые не экспонируют интерфейс массива, но знают, как преобразовать себя в массивы. Он также поддерживает классы с единицами измерения и преобразованием единиц. Примеры использования включают преобразователи для пользовательских объектов, например, список объектов datetime, а также для объектов, которые знают единицы измерения. Мы не предполагаем никакой конкретной реализации единиц; скорее, реализация единиц должна предоставить регистр со словарем преобразователя Registry и ConversionInterface. Например, вот полная реализация, которая поддерживает построение графиков с нативными объектами datetime:

import matplotlib.units as units
import matplotlib.dates as dates
import matplotlib.ticker as ticker
import datetime

class DateConverter(units.ConversionInterface):

    @staticmethod
    def convert(value, unit, axis):
        'Convert a datetime value to a scalar or array'
        return dates.date2num(value)

    @staticmethod
    def axisinfo(unit, axis):
        'Return major and minor tick locators and formatters'
        if unit!='date': return None
        majloc = dates.AutoDateLocator()
        majfmt = dates.AutoDateFormatter(majloc)
        return AxisInfo(majloc=majloc,
                        majfmt=majfmt,
                        label='date')

    @staticmethod
    def default_units(x, axis):
        'Return the default unit for x or None'
        return 'date'

# Finally we register our object type with the Matplotlib units registry.
units.registry[datetime.date] = DateConverter()
class matplotlib.units.AxisInfo(majloc=None, minloc=None, majfmt=None, minfmt=None, label=None, default_limits=None) [source]

Базы: object

Информация для поддержки маркировки осей по умолчанию, маркировки делений и пределов по умолчанию. Экземпляр этого класса должен возвращаться ConversionInterface.axisinfo().

Параметры:
majloc, minloc : Locator, optional

Позиционеры делений для основных и второстепенных делений.

majfmt, minfmt : Formatter, optional

Форматировщики делений для основных и второстепенных делений.

label : str, optional

Подпись оси по умолчанию.

default_limits : optional

Пределы по умолчанию min и max оси, если данные не были нанесены на график.

Примечания

Если какое-либо из вышеперечисленного None, ось просто использует значение по умолчанию.

class matplotlib.units.ConversionInterface [source]

Базы: object

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

static axisinfo(unit, axis) [source]

Возвращает экземпляр AxisInfo для оси с указанными единицами.

static convert(obj, unit, axis) [source]

Преобразовать obj, используя unit для указанной axis. Если obj — последовательность, возвращает преобразованную последовательность. Выход должен быть последовательностью скаляров, которые могут быть использованы слоем массивов numpy.

static default_units(x, axis) [source]

Возвращает единицу по умолчанию для x или None для заданной оси.

static is_numlike(x) [source]

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

class matplotlib.units.Registry [source]

Базы: dict

Регистр, который сопоставляет типы с интерфейсами преобразования.

get_converter(x) [source]

Получить преобразователь для данных, которые имеют тот же тип, что и x. Если для x не зарегистрированы преобразователи, возвращает None.

© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/2.2.3/api/units_api.html

Spec-Zone.ru

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