Matplotlib.axes.axes.inset_axes()
Matplotlib是Python中的一个库,它是NumPy库的数值-数学扩展。Axes包含了大多数图形元素:Axis、Tick、Line2D、Text、Polygon等,并设置坐标系。Axes的实例通过callbacks属性支持回调。
函数:matplotlib.axes.Axes.inset_axes()
matplotlib库的Axes模块中的Axes.inset_axes()函数也用于在现有的坐标轴上添加一个子inset坐标轴。
Axes.inset_axes(self, bounds, *, transform=None,zorder=5, **kwargs)
参数:该方法接受如下参数说明:
- bounds:该参数是插入轴的左下角,以及它的宽度和高度。[x0, y0, width, height]
- transform:这个参数是矩形的单位是轴相对坐标。
- zorder:该参数包含数字,默认值为5。
该方法返回已创建的Axes实例ax。
注意:此函数适用于Matplotlib版本>= 3.0
下面的例子演示了matplotlib.axes.axes.inset_axes()函数在matplotlib.axes中的作用:
示例1
# Implementation of matplotlib function
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot(range(10))
axin1 = ax.inset_axes([0.8, 0.1,
0.15, 0.15])
axin2 = ax.inset_axes(
[5, 7, 2.3, 2.3], transform = ax.transData)
ax.set_title('matplotlib.axes.Axes.inset_axes() 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 ="Greens")
axins = ax.inset_axes([0.5, 0.5, 0.47, 0.47])
axins.imshow(Z2, extent = extent,
interpolation ="nearest",
origin ="lower", cmap ="Greens")
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.inset_axes() Example',
fontsize = 14, fontweight ='bold')
plt.show()
输出: