标签:不同 intern 底部 数据对象 obj 生成 自定义 product inf
如何创建轴的网格状组合。
subplots()
也许用于创建图形和轴的主要功能。它也类似于matplotlib.pyplot.subplot()
,但是会立即在图形上创建并放置所有轴。
GridSpec
指定将放置子图的网格的几何形状。需要设置网格的行数和列数。可选地,可以调整子图布局参数(例如,左,右等)。
SubplotSpec
指定子图在给定GridSpec中的位置。
subplot2grid()
类似于的辅助函数 subplot()
,但使用基于0的索引,并让子图占据多个单元。本教程未涵盖此功能。
前两个示例显示了如何使用subplots()
和来创建基本的2×2网格gridspec
。
使用subplots()
非常简单。它返回一个Figure
实例和一个Axes
对象数组 。
对于像这样的简单用例,gridspec
可能过于冗长。您必须分别创建图形和GridSpec
实例,然后将gridspec实例的元素传递给 add_subplot()
方法以创建轴对象。
通常,以与numpy数组相同的方式访问gridspec的元素。
gridspec的功能在于能够创建跨越行和列的子图
请注意,我们还使用了便捷方法Figure.add_gridspec
代替gridspec.GridSpec
,从而有可能为用户节省了导入时间,并使名称空间更整洁。
gridspec
通过两种方法创建不同宽度的子图也是必不可少的。
此处显示的方法与上述方法类似,并初始化了统一的网格规范,然后使用numpy索引和切片为给定的子图分配多个“单元”。
另一种选择是使用width_ratios
和height_ratios
参数。这些关键字参数是数字列表。注意,绝对值是没有意义的,只有它们的相对比率才重要。
这意味着,等于 等宽的数字范围内。
学会使用width_ratios
并且height_ratios
特别有用,因为顶级函数subplots()
在gridspec_kw
参数中接受它们。
对于这个问题,任何一个参数接受 GridSpec
能够传递给 subplots()
通过gridspec_kw
参数。
本示例在不直接使用gridspec实例的情况下重新创建了上一个图形。
扫盲 enumerate 函数:
enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
该subplots
和get_gridspec
方法可以结合起来,因为它有时是使大多数使用的次要情节的更方便subplots
,然后删除一些并结合它们。
在这里,我们创建一个布局,其中最后一列的底部两个轴组合在一起。
显式使用GridSpec时,可以调整从GridSpec创建的子图的布局参数。请注意,此选项与子图大小不兼容,
constrained_layout
或者 Figure.tight_layout
两者都调整子图大小以填充图形。
您可以从创建GridSpec SubplotSpec
,在这种情况下,其布局参数设置为给定SubplotSpec的位置。
这是嵌套GridSpec的一个更复杂的示例,其中通过在每个内部3x3网格中隐藏适当的刺,在外部4x4网格的每个单元周围放置一个框。
扫盲product函数:
product
用于求多个可迭代对象的笛卡尔积(Cartesian Product),它跟嵌套的 for 循环等价.即:
product(A, B)
和 ((x,y) for x in A for y in B)一样.
Matplotlib 使用GridSpec和其他功能自定义图形布局
标签:不同 intern 底部 数据对象 obj 生成 自定义 product inf
原文地址:https://www.cnblogs.com/leon-joker/p/12775520.html