📌  相关文章
📜  Python中的 Matplotlib.axis.Axis.set_clip_box()函数

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

Python中的 Matplotlib.axis.Axis.set_clip_box()函数

Matplotlib是Python中的一个库,它是 NumPy 库的数值数学扩展。它是Python中用于二维数组图的惊人可视化库,用于处理更广泛的 SciPy 堆栈。

Matplotlib.axis.Axis.set_clip_box()函数

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

以下示例说明了 matplotlib.axis 中的 matplotlib.axis.Axis.set_clip_box()函数:
示例 1:

Python3
# Implementation of matplotlib function
from matplotlib.axis import Axis
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:  
    Axis.set_clip_box(e, ax.bbox)  
    e.set_alpha(0.1)  
    ax.add_artist(e)  
      
plt.xlim(-1, 5)  
plt.ylim(-1, 5) 
  
fig.suptitle('matplotlib.axis.Axis.set_clip_box() \
function Example\n', fontweight ="bold")  
    
plt.show()


Python3
# Implementation of matplotlib function
from matplotlib.axis import Axis
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) 
    Axis.set_clip_box(e, ax.bbox)  
    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.axis.Axis.set_clip_box() \
function Example\n', fontweight ="bold")  
    
plt.show()


输出:

示例 2:

Python3

# Implementation of matplotlib function
from matplotlib.axis import Axis
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) 
    Axis.set_clip_box(e, ax.bbox)  
    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.axis.Axis.set_clip_box() \
function Example\n', fontweight ="bold")  
    
plt.show() 

输出: