imshow 的插值#

此示例显示 imshow 的插值方法之间的区别。

如果 interpolation 为 None,则默认为 rcParams["image.interpolation"](默认值:'antialiased')。如果插值为 'none',则不会对 Agg、ps 和 pdf 后端执行任何插值。其他后端将默认为 'antialiased'

对于 Agg、ps 和 pdf 后端,interpolation='none' 在缩小大图像时效果很好,而 interpolation='nearest' 在放大小图像时效果很好。

有关默认 interpolation='antialiased' 选项的讨论,请参见 图像抗锯齿

import matplotlib.pyplot as plt
import numpy as np

methods = [None, 'none', 'nearest', 'bilinear', 'bicubic', 'spline16',
           'spline36', 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric',
           'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', 'lanczos']

# Fixing random state for reproducibility
np.random.seed(19680801)

grid = np.random.rand(4, 4)

fig, axs = plt.subplots(nrows=3, ncols=6, figsize=(9, 6),
                        subplot_kw={'xticks': [], 'yticks': []})

for ax, interp_method in zip(axs.flat, methods):
    ax.imshow(grid, interpolation=interp_method, cmap='viridis')
    ax.set_title(str(interp_method))

plt.tight_layout()
plt.show()
None, none, nearest, bilinear, bicubic, spline16, spline36, hanning, hamming, hermite, kaiser, quadric, catrom, gaussian, bessel, mitchell, sinc, lanczos

参考

本示例中展示了以下函数、方法、类和模块的使用

脚本的总运行时间:(0 分钟 2.134 秒)

由 Sphinx-Gallery 生成的图库