Matplotlib is hiring a Research Software Engineering Fellow! See discourse for details. Apply by January 3, 2020
matplotlib.cbook
¶实用函数和类的集合。最初,许多(但不是全部)来自于Python食谱——因此得名cBook。
此模块可以安全地从matplotlib内的任何位置导入;它仅在运行时导入matplotlib。
matplotlib.cbook.
Bunch
(**kwargs)[源代码]¶3.0 版后已移除: bucket类在matplotlib 3.0中被弃用,将在3.2中删除。改用types.simplenamespace。
通常我们只想把一堆东西收集在一起,给每一个项目命名;一本字典就可以了,但是一个小的什么也不做的类更容易用,更漂亮。每当您想分组几个变量时:
>>> point = Bunch(datum=2, squared=4, coord=12)
>>> point.datum
matplotlib.cbook.
CallbackRegistry
(exception_handler=<function _exception_printer>)[源代码]¶基类:object
处理一组信号和回调的注册和断开:
>>> def oneat(x):
... print('eat', x)
>>> def ondrink(x):
... print('drink', x)
>>> from matplotlib.cbook import CallbackRegistry
>>> callbacks = CallbackRegistry()
>>> id_eat = callbacks.connect('eat', oneat)
>>> id_drink = callbacks.connect('drink', ondrink)
>>> callbacks.process('drink', 123)
drink 123
>>> callbacks.process('eat', 456)
eat 456
>>> callbacks.process('be merry', 456) # nothing will be called
>>> callbacks.disconnect(id_eat)
>>> callbacks.process('eat', 456) # nothing will be called
在实践中,当不再需要回调以避免挂起引用(从而导致内存泄漏)时,应该始终断开它们。然而,Matplotlib中的真实代码很少这样做,而且由于其设计,很难放置此类代码。为了解决这个问题并防止此类内存泄漏,我们只存储对绑定方法的弱引用,因此当目标对象需要死亡时,回调注册表不会使其保持活动状态。
参数: |
|
---|
matplotlib.cbook.
GetRealpathAndStat
(**kwargs)[源代码]¶基类:object
3.0 版后已移除: getrealpathandstat类在matplotlib 3.0中已被弃用,将在3.2中删除。
matplotlib.cbook.
Grouper
(init=())[源代码]¶基类:object
这个类提供了一种轻量级的方法,当一个全面的图形数据结构被过度破坏时,可以将任意对象组合成不相交的集合。
对象可以使用 join()
,使用测试连通性 joined()
,所有不相交的集都可以使用对象作为迭代器来检索。
要联接的对象必须是可哈希的和弱可引用的。
例如:
>>> from matplotlib.cbook import Grouper
>>> class Foo(object):
... def __init__(self, s):
... self.s = s
... def __repr__(self):
... return self.s
...
>>> a, b, c, d, e, f = [Foo(x) for x in 'abcdef']
>>> grp = Grouper()
>>> grp.join(a, b)
>>> grp.join(b, c)
>>> grp.join(d, e)
>>> sorted(map(tuple, grp))
[(a, b, c), (d, e)]
>>> grp.joined(a, b)
True
>>> grp.joined(a, c)
True
>>> grp.joined(a, d)
False
matplotlib.cbook.
IgnoredKeywordWarning
[源代码]¶基类:UserWarning
用于发出有关Matplotlib将忽略的关键字参数的警告的类
matplotlib.cbook.
Locked
(**kwargs)[源代码]¶基类:object
3.0 版后已移除: 锁定类在matplotlib 3.0中已被弃用,将在3.2中删除。
用于处理锁的上下文管理器。
基于Conda的代码。
(c)2012-2013 Continuum Analytics,Inc./https://www.continuum.io/保留所有权利
Conda根据BSD 3条款许可证的条款分发。请咨询许可证或https://opensource.org/licenses/bsd-3-clause。
LOCKFN
= '.matplotlib_lock'¶TimeoutError
[源代码]¶基类:RuntimeError
matplotlib.cbook.
align_iterators
(func, *iterables)[源代码]¶2.2 版后已移除: Align_迭代器函数在matplotlib 2.2中已被弃用,将在3.1中删除。
这个生成器接受一组由func排序的iterables,它发送排序的tuples::
(func(row), [rows from all iterators matching func(row)])
它被使用 matplotlib.mlab.recs_join()
连接记录数组
matplotlib.cbook.
boxplot_stats
(X, whis=1.5, bootstrap=None, labels=None, autorange=False)[源代码]¶返回用于绘制一系列方框图和胡须图的统计字典列表。这个 Returns
节枚举字典所需的键。用户可以跳过此函数并将用户定义的一组词典传递给新的 axes.bxp
方法,而不是依赖MPL进行计算。
参数: |
|
||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
返回: |
|
笔记
置信区间的非自举方法使用基于高斯的渐近近似:
一般方法来源:McGill,R.,Tukey,J.W.和Larsen,W.A.(1978),“箱线变化”,美国统计学家,32:12-16。
matplotlib.cbook.
contiguous_regions
(mask)[源代码]¶返回(ind0,ind1)的列表,以便屏蔽 [吲哚1:吲哚酮] .all()是正确的,我们涵盖了所有这些区域
matplotlib.cbook.
dedent
(s)[源代码]¶从docstring中删除多余的缩进 s .
丢弃任何前导空白行,然后从每行中删除最多n个空白字符,其中n是第一行中前导空白字符的数目。它在删除前导空白行和使用第一个非空白行确定缩进方面不同于textwarp.dent。
在大多数情况下,速度也更快。
matplotlib.cbook.
delete_masked_points
(*args)[源代码]¶在一组参数中查找所有屏蔽点和/或非有限点,并返回只剩下未屏蔽点的参数。
参数可以分为5类:
第一个参数必须在前四个类别中的一个类别中;任何长度与第一个参数不同的参数(因此第5类中的任何内容)都将以不变的方式传递。
屏蔽是从类别1、2和4中长度正确的所有参数中获取的;如果屏蔽在屏蔽数组中或是NaN或Inf中,则点是不好的。如果 np.isfinite()
不生成布尔数组。
在删除任何参数中与遮罩对应的点或行后,未通过更改传递的所有输入参数将以ndarrays形式返回。
这个函数的一个非常简单的版本最初是作为axes.scatter()的助手编写的。
matplotlib.cbook.
flatten
(seq, scalarp=<function is_scalar_or_string>)[源代码]¶返回扁平嵌套容器的生成器
例如:
>>> from matplotlib.cbook import flatten
>>> l = (('John', ['Hunter']), (1, 23), [[([42, (5, 23)], )]])
>>> print(list(flatten(l)))
['John', 'Hunter', 1, 23, 42, 5, 23]
作者:Holger Krekel和Luther Blisset的合成,来自:https://code.activestate.com/recipes/121294/和食谱1.12
matplotlib.cbook.
get_sample_data
(fname, asfileobj=True)[源代码]¶返回示例数据文件。 文件名 是相对于 mpl-data/sample_data
目录。如果 AsSeriObjo 是 True
返回一个文件对象,否则只返回一个文件路径。
如果示例数据文件存储在不同于默认值的位置(即“mpl data/sample_data”与“matplotlib”python模块文件的同一级别),请将rc参数examples.directory设置为我们应该查看的目录。
如果文件名以.gz结尾,则文件将隐式取消压缩。
matplotlib.cbook.
index_of
(y)[源代码]¶如果没有显式给定x值,则获取要绘制的输入索引的辅助函数。
试图得到 y.index
(如果是pd.series,则有效),如果失败,则返回np.arange(y.shape [0] )
这将在将来扩展以处理更多类型的标记数据。
参数: |
|
---|---|
返回: |
|
matplotlib.cbook.
listFiles
(root, patterns='*', recurse=1, return_folders=0)[源代码]¶3.0 版后已移除: listfiles函数在matplotlib 3.0中已弃用,将在3.2中删除。
递归列出文件
来自《 Python 食谱》中的帕尔玛和马泰利
matplotlib.cbook.
local_over_kwdict
(local_var, kwargs, *keys)[源代码]¶强制局部变量优先于Kwargs dict中可能存在冲突的参数。以下可能的输出值按优先级顺序考虑:
当地禁运 [钥匙0] >…克沃斯 [keys[-1] ]
其中第一个值不是“无”的将被返回。如果全部都不存在,则不会返回任何信息。每把钥匙都将从Kwargs dict中取出。
参数: |
|
---|---|
返回: |
|
加薪: |
|
matplotlib.cbook.
mkdirs
(newdir, mode=511)[源代码]¶3.0 版后已移除: mkdirs函数在matplotlib 3.0中已弃用,将在3.2中删除。
制作目录 纽迪尔 递归,并设置 mode . 相当于:
> mkdir -p NEWDIR
> chmod MODE NEWDIR
matplotlib.cbook.
normalize_kwargs
(kw, alias_mapping=None, required=(), forbidden=(), allowed=None)[源代码]¶帮助函数规范化Kwarg输入
它们的解决顺序是:
- 混叠
- 必修的
- 被禁止的
- 允许
这个顺序意味着只有规范名称需要出现在 allowed
, forbidden
, required
参数: |
|
---|---|
加薪: |
|
matplotlib.cbook.
print_cycles
(objects, outstream=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='UTF-8'>, show_progress=False)[源代码]¶matplotlib.cbook.
pts_to_midstep
(x, *args)[源代码]¶将连续线条转换为中间步骤。
给定一组 N
点转换为 2N
线性连接时的点给出一个阶跃函数,该函数在间隔中间改变值。
参数: |
|
---|---|
返回: |
|
实例
>>x瓒s,y1瓒s,y2瓒s=pts瓒到瓒中间步骤(x,y1,y2)
matplotlib.cbook.
pts_to_poststep
(x, *args)[源代码]¶将连续行转换为后置步骤。
给定一组 N
点转换为 2N + 1
点,当线性连接时,它给出一个阶跃函数,该函数在间隔结束时改变值。
参数: |
|
---|---|
返回: |
|
实例
>>X,Y1,Y2 S=pts to poststep(X,Y1,Y2)
matplotlib.cbook.
pts_to_prestep
(x, *args)[源代码]¶将连续行转换为预步骤。
给定一组 N
点,转换为 2N - 1
点,当线性连接时,它给出一个阶跃函数,该函数在间隔开始时改变值。
参数: |
|
---|---|
返回: |
|
实例
>>X S,Y1,Y2 S=pts to prestep(X,Y1,Y2)