Matplotlib Image 图片

Matplotlib xuhss 827℃ 0评论

随机矩阵画图

这一节我们讲解怎样在matplotlib中打印出图像。这里我们打印出的是纯粹的数字,而非自然图像。 我们今天用这样 3x3 的 2D-array 来表示点的颜色,每一个点就是一个pixel。

import matplotlib.pyplot as plt
import numpy as np

a = np.array([0.313660827978, 0.365348418405, 0.423733120134,
              0.365348418405, 0.439599930621, 0.525083754405,
              0.423733120134, 0.525083754405, 0.651536351379]).reshape(3,3)

今天做出的图像就是这个样子:

3cd6b3b1b4c20b3f4d5b1c913b21dc97 - Matplotlib Image 图片

三行三列的格子,a代表每一个值,图像右边有一个注释,白色代表值最大的地方,颜色越深值越小。

下面我们来看代码:

plt.imshow(a, interpolation='nearest', cmap='bone', origin='lower')

我们之前选cmap的参数时用的是:cmap=plt.cmap.bone,而现在,我们可以直接用单引号传入参数。 origin='lower'代表的就是选择的原点的位置。

出图方式

我们在这个链接 可以看到matplotlib官网上对于内插法的不同方法的描述。下图是一个示例:

47f7f2778acf102054b517846a686281 - Matplotlib Image 图片

这里我们使用的是内插法中的 Nearest-neighbor 的方法,其他的方式也都可以随意取选。

colorbar

下面我们添加一个colorbar ,其中我们添加一个shrink参数,使colorbar的长度变短为原来的92%:

plt.colorbar(shrink=.92)

plt.xticks(())
plt.yticks(())
plt.show()

这样我们2D图像就创建完毕了。

3cd6b3b1b4c20b3f4d5b1c913b21dc97 - Matplotlib Image 图片

转载请注明:xuhss » Matplotlib Image 图片

喜欢 (2)

您必须 登录 才能发表评论!