Matplotlib.axes.axes.imshow()
Matplotlib是Python中的一个库,它是NumPy库的数值-数学扩展。Axes包含了大多数图形元素:Axis、Tick、Line2D、Text、Polygon等,并设置坐标系。Axes的实例通过callbacks属性支持回调。
函数:matplotlib.axes.axes.imshow
matplotlib库的Axes模块中的Axes.imshow()函数也用于在2D常规栅格上显示图像或数据。
Syntax:
Axes.imshow(self, X, cmap=None,norm=None,aspect=None,插值=None,alpha=None,vmin=None,vmax=None,origin=None,extent=None,shape=, filternorm=1, filterrad=4.0, imlim=, ressample =None,url=None,*,data=None,**kwargs)
参数:该方法接受如下参数说明:
- X:镜像数据。
- cmap:该参数是一个colormap实例或注册的colormap名称。
- norm: Normalize实例将数据值缩放到规范的colormap范围[0,1],用于映射到颜色
- vmin, vmax:这些参数本质上是可选的,它们是颜色条范围。
- alpha:该参数是颜色的强度。
- aspect:该参数用于控制轴的长宽比。
- 内插:该参数是用来显示图像的内插方法。
- origin:该参数用于将数组的[0,0]索引放置在坐标轴的左上角或左下角。
- resample:该参数是用于相似的方法。
- extent:该参数是数据坐标的边界框。
- filternorm:该参数用于反粒度图像大小调整滤波器。
- filterrad:对于具有radius参数的过滤器,该参数表示过滤半径。
- url:该参数设置已创建的AxesImage的url。
返回如下内容:
- image:返回AxesImage
下面的例子演示了matplotlib.axes.axes.imshow()函数在matplotlib.axes中的作用:
示例1
# Implementation of matplotlib function
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.colors import LogNorm
dx, dy = 0.015, 0.05
y, x = np.mgrid[slice(-4, 4 + dy, dy),
slice(-4, 4 + dx, dx)]
z = (1 - x / 3. + x ** 5 + y ** 5) * np.exp(-x ** 2 - y ** 2)
z = z[:-1, :-1]
z_min, z_max = -np.abs(z).max(), np.abs(z).max()
fig, ax = plt.subplots()
c = ax.imshow(z, cmap ='Greens', vmin = z_min,
vmax = z_max, extent =[x.min(),
x.max(),
y.min(),
y.max()],
interpolation ='nearest',
origin ='lower')
fig.colorbar(c, ax = ax)
ax.set_title('matplotlib.axes.Axes.imshow() Examples')
plt.show()
输出:
示例2
# Implementation of matplotlib function
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.colors import LogNorm
dx, dy = 0.015, 0.05
x = np.arange(-4.0, 4.0, dx)
y = np.arange(-4.0, 4.0, dy)
X, Y = np.meshgrid(x, y)
extent = np.min(x), np.max(x), np.min(y), np.max(y)
fig, ax = plt.subplots()
Z1 = np.add.outer(range(8), range(8)) % 2
ax.imshow(Z1, cmap ="binary_r", interpolation ='nearest',
extent = extent, alpha = 1)
def geeks(x, y):
return (1 - x / 2 + x**5 + y**6) * np.exp(-(x**2 + y**2))
Z2 = geeks(X, Y)
ax.imshow(Z2, cmap ="Greens", alpha = 0.7,
interpolation ='bilinear',
extent = extent)
ax.set_title('matplotlib.axes.Axes.imshow() Examples')
plt.show()
输出: