Matplotlib 中二维数组的色图
Suraj Joshi
2023年1月30日
2020年12月31日
-
在 Matplotlib 中使用
matplotlib.pyplot.imshow()
方法绘制 2D 数组 -
在 Matplotlib 中使用
matplotlib.pyplot.pcolormesh()
方法绘制 2D 数组
本教程介绍了如何使用 Python 中的 matplotlib.pyplot.imshow()
和 matplotlib.pyplot.pcolormesh()
方法生成 2D 数组的 colorplot 图。
在 Matplotlib 中使用 matplotlib.pyplot.imshow()
方法绘制 2D 数组
matplotlib.pyplot.imshow()
方法将一个二维数组作为输入,并将给定数组渲染为光栅图像。
matplotlib.pyplot.imshow()
的语法
matplotlib.pyplot.imshow(X,
cmap=None,
norm=None,
aspect=None,
interpolation=None,
alpha=None,
vmin=None,
vmax=None,
origin=None,
extent=None, *,
filternorm=True,
filterrad=4.0,
resample=None,
url=None,
data=None,
**kwargs)
matplotlib.pyplot.imshow()
示例
import numpy as np
import matplotlib.pyplot as plt
X=np.random.randint(256, size=(10, 10))
fig = plt.figure(figsize=(8,6))
plt.imshow(X)
plt.title("Plot 2D array")
plt.show()
输出:
它绘制使用 numpy.random.randint()
创建的大小 10*10
的 2D 数组。默认情况下,数值是使用 viridis
colormap 映射的。
我们可以在 imshow()
方法中设置 cmap
参数来改变 colormap。
import numpy as np
import matplotlib.pyplot as plt
X=np.random.randint(256, size=(10, 10))
fig = plt.figure(figsize=(8,6))
plt.imshow(X,cmap="inferno")
plt.title("Plot 2D array")
plt.colorbar()
plt.show()
输出:
它显示的是带有 inferno
colormap 的二维数组图。我们还可以在图的右侧看到一个颜色条,它告诉我们数组中的哪些值被映射到哪些颜色上。
在 Matplotlib 中使用 matplotlib.pyplot.pcolormesh()
方法绘制 2D 数组
matplotlib.pyplot.pcolormesh()
函数在 Matplotlib 中创建一个伪彩色图。它与 matplotlib.pyplot.pcolor()
函数类似。
import numpy as np
import matplotlib.pyplot as plt
X=np.random.randint(256, size=(10, 10))
fig = plt.figure(figsize=(8,6))
plt.pcolormesh(X,cmap="plasma")
plt.title("Plot 2D array")
plt.colorbar()
plt.show()
输出:
它绘制了使用 numpy.random.randint()
创建的大小为 10*10
的二维数组与 plasma
colormap。右边的色条代表了分配给不同数值范围的颜色。
Author: Suraj Joshi
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn