📅  最后修改于: 2023-12-03 15:34:22.930000             🧑  作者: Mango
该方法是 Matplotlib 中 Axis 类的一个方法,用于获取当前轴的子对象。
axis.get_contains()
此方法返回一个包含当前轴下子对象的字典对象。
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6])
contains = ax.get_contains()
print(contains)
输出:
{'line': [<matplotlib.lines.Line2D at 0x7feb7c49f2d0>], 'ticklabels': <a list of 3 Text major ticklabel objects>, 'ticks': <a list of 3 Line2D ticklines objects>, 'gridspec': <matplotlib.gridspec.GridSpec object at 0x7feb7c41fcd0>, 'spines': OrderedDict...}
从上述例子中,我们可以看到该方法返回了当前轴下的所有子对象,包括折线、刻度线、标签、边界等等。通过此方法,可以很方便地获取和修改轴下的对象属性。例如,我们可以通过以下代码修改刻度值的字体大小:
from matplotlib import font_manager
ticklabels = contains["ticklabels"]
for label in ticklabels:
label.set_fontsize(16)
label.set_fontfamily(font_manager.FontProperties(fname='/Library/Fonts/Microsoft/arial.ttf').get_name())