📌  相关文章
📜  Python中的 Matplotlib.axes.Axes.set_clip_box()

📅  最后修改于: 2022-05-13 01:54:51.256000             🧑  作者: Mango

Python中的 Matplotlib.axes.Axes.set_clip_box()

Matplotlib是Python中的一个库,它是 NumPy 库的数值数学扩展。 Axes 类包含大部分图形元素:Axis、Tick、Line2D、Text、Polygon 等,并设置坐标系。 Axes 的实例通过回调属性支持回调。

matplotlib.axes.Axes.set_clip_box()函数

matplotlib 库的 axes 模块中的Axes.set_clip_box()函数用于设置艺术家的剪辑 Bbox。

下面的示例说明了 matplotlib.axes 中的 matplotlib.axes.Axes.set_clip_box()函数:

示例 1:

# Implementation of matplotlib function
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.patches import Ellipse
  
delta = 45.0
  
angles = np.arange(0, 360 + delta, delta)
ells = [Ellipse((2, 2), 5, 2, a) for a in angles]
  
fig, ax = plt.subplots()
  
for e in ells:
    e.set_clip_box(ax.bbox)
    e.set_alpha(0.1)
    ax.add_artist(e)
  
plt.xlim(-1, 5)
plt.ylim(-1, 5)
    
    
fig.suptitle('matplotlib.axes.Axes.set_clip_box() \
function Example\n\n', fontweight ="bold")
  
plt.show()

输出:

示例 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)
    
    
fig.suptitle('matplotlib.axes.Axes.set_clip_box() \
function Example\n\n', fontweight ="bold")
  
plt.show()

输出: