📜  Python中的 Matplotlib.axes.Axes.indicate_inset_zoom()

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

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

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

matplotlib.axes.Axes.indicate_inset_zoom()函数

matplotlib 库的 axes 模块中的Axes.indicate_inset()函数也用于向轴添加插入指示符。

注意:此函数适用于 Matplotlib 版本 >= 3.0

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

示例 1:

# Implementation of matplotlib function
import matplotlib.pyplot as plt
import numpy as np
fig, ax = plt.subplots()
  
  
Z2 = np.zeros([150, 150], dtype ="g")
  
axins = ax.inset_axes([0.5, 0.5, 0.47, 0.47])
x1, x2, y1, y2 = -1.5, -0.9, -2.5, -1.9
axins.set_xlim(x1, x2)
axins.set_ylim(y1, y2)
   
ax.indicate_inset_zoom(axins)
  
ax.set_title('matplotlib.axes.Axes.indicate_inset_zoom() Example',
             fontsize = 14, fontweight ='bold')
plt.show()

输出:

示例 2:

# Implementation of matplotlib function
import matplotlib.pyplot as plt
import numpy as np
   
   
def geeks():
    from matplotlib.cbook import get_sample_data
    import numpy as np
    f = get_sample_data("axes_grid / bivariate_normal.npy",
                        asfileobj = False)
    z = np.load(f)
    return z, (-3, 4, -4, 3)
   
fig, ax = plt.subplots()
   
X, extent = geeks()
Z2 = np.zeros([150, 150], dtype ="g")
ny, nx = X.shape
Z2[30:30 + ny, 30:30 + nx] = X
   
ax.imshow(Z2, extent = extent, interpolation ="nearest",
          origin ="lower", cmap ="YlGn")
   
axins = ax.inset_axes([0.5, 0.5, 0.47, 0.47])
axins.imshow(Z2, extent = extent, interpolation ="nearest",
          origin ="lower", cmap ="BuGn")
x1, x2, y1, y2 = -1.5, -0.9, -2.5, -1.9
axins.set_xlim(x1, x2)
axins.set_ylim(y1, y2)
   
ax.indicate_inset_zoom(axins)
   
ax.set_title('matplotlib.axes.Axes.indicate_inset_zoom() Example',
             fontsize = 14, fontweight ='bold')
plt.show()

输出: