matplotlib.units
¶
这里的类支持使用Matplotlib自定义类,例如那些不公开数组接口但知道如何将自己转换为数组的类。它还支持使用单位和单位转换的类。用例包括自定义对象(例如,日期时间对象列表)以及单元感知对象的转换器。我们不假设任何特定的单元实现;相反,单元实现必须向注册表转换器字典和 ConversionInterface
. 例如,这里有一个完整的实现,它支持使用本机日期时间对象进行绘图:
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)[源代码]¶ 基类:
object
支持默认轴标签、记号标签和限制的信息。
此类的实例必须由
ConversionInterface.axisinfo
.参数: - 马洛克定位器,可选
主要刻度和次要刻度的刻度定位器。
- MimfMT格式化程序,可选
主要刻度和次要刻度的刻度格式设置工具。
- label可选的STR
默认轴标签。
- default_limits可选择的
如果未绘制数据,则为轴的默认最小和最大限制。
笔记
如果上述任何一项
None
,轴只使用默认值。
-
class
matplotlib.units.
ConversionInterface
[源代码]¶ 基类:
object
转换器获取自定义数据类型(或序列)并将其转换为Matplotlib值的最小接口可以使用。
-
class
matplotlib.units.
DecimalConverter
[源代码]¶ 基类:
matplotlib.units.ConversionInterface
转换器十进制。十进制要浮动的数据。