Python中的 Matplotlib.figure.Figure.get_constrained_layout_pads()
Matplotlib是Python中的一个库,它是 NumPy 库的数值数学扩展。 figure 模块提供了顶级 Artist,即 Figure,其中包含所有绘图元素。该模块用于控制所有绘图元素的子图和顶级容器的默认间距。
matplotlib.figure.Figure.get_constrained_layout_pads() 方法
matplotlib 库的图形模块的 get_constrained_layout_pads() 方法用于获取 constrained_layout 的填充。
Syntax: get_constrained_layout_pads(self, relative=False)
Parameters: This method does not accept any parameters.
Returns: This method returns a list of w_pad, h_pad in inches and wspace and hspace as fractions of the subplot.
下面的示例说明了 matplotlib.figure 中的 matplotlib.figure.Figure.get_constrained_layout_pads()函数:
示例 1:
# Implementation of matplotlib function
import matplotlib.pyplot as plt
from matplotlib.lines import Line2D
import numpy as np
from numpy.random import rand
fig, ax2 = plt.subplots()
ax2.bar(range(10), rand(10), picker = True)
for label in ax2.get_xticklabels():
label.set_picker(True)
def onpick1(event):
if isinstance(event.artist, Line2D):
thisline = event.artist
xdata = thisline.get_xdata()
ydata = thisline.get_ydata()
ind = event.ind
print('onpick1 line:',
np.column_stack([xdata[ind],
ydata[ind]]))
elif isinstance(event.artist, Rectangle):
patch = event.artist
print('onpick1 patch:', patch.get_path())
elif isinstance(event.artist, Text):
text = event.artist
print('onpick1 text:', text.get_text())
print("Value return by get_constrained_layout_pads() ")
w = list(fig.get_constrained_layout_pads())
print("w_pad :", w[0])
print("h_pad :", w[1])
print("wspace :", w[2])
print("hspace :", w[3])
fig.suptitle('matplotlib.figure.Figure.get_constrained_layout_pads() \
function Example\n\n', fontweight ="bold")
plt.show()
输出:
Value return by get_constrained_layout_pads()
w_pad : 0.04167
h_pad : 0.04167
wspace : 0.02
hspace : 0.02
示例 2:
# Implementation of matplotlib function
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.patches import Ellipse
NUM = 200
ells = [Ellipse(xy = np.random.rand(2) * 10,
width = np.random.rand(),
height = np.random.rand(),
angle = np.random.rand() * 360)
for i in range(NUM)]
fig, ax = plt.subplots(subplot_kw ={'aspect': 'equal'})
for e in ells:
ax.add_artist(e)
e.set_clip_box(ax.bbox)
e.set_alpha(np.random.rand())
e.set_facecolor(np.random.rand(4))
ax.set_xlim(3, 7)
ax.set_ylim(3, 7)
print("Value return by get_constrained_layout_pads() ")
w = list(fig.get_constrained_layout_pads())
print("w_pad :", w[0])
print("h_pad :", w[1])
print("wspace :", w[2])
print("hspace :", w[3])
fig.suptitle('matplotlib.figure.Figure.get_constrained_layout_pads() \
function Example\n\n', fontweight ="bold")
plt.show()
输出:
Value return by get_constrained_layout_pads()
w_pad : 0.04167
h_pad : 0.04167
wspace : 0.02
hspace : 0.02