等高线图:也称水平图,是一种在二维平面上显示 3D 图像的方法。
x = np.linspace(-5, 5, 100)
y = np.linspace(-5, 5, 100)
# 将上述数据变成网格数据形式
X, Y = np.meshgrid(x, y)
# 定义Z与X, Y之间的关系
Z = np.sqrt(X**2 + Y**2)
# 画等高线
cp = plt.contourf(X, Y, Z)
# 颜色柱
plt.colorbar(cp)
plt.savefig('images/5-27.png')
plt.show()
numpy.linspace()
函数用于生成一组等间距的数字。这个函数的语法如下:
numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)
参数说明:
start
:指定数列的起始值。stop
:指定数列的结束值。num
:指定数列的元素个数,默认为50。endpoint
:指定是否包含结束值,默认为True,即包含结束值。retstep
:指定是否返回数列的步长,默认为False。dtype
:指定返回数列的数据类型。在numpy
库中有一个meshgrid()
函数可以生成一个二维坐标网格。
numpy.meshgrid()
函数用于根据给定的两个一维数组(或者多维数组)生成一个二维坐标网格。这
个函数的语法如下:
numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
参数说明:
*xi
:可以是一维数组、多维数组或者元组,表示需要生成坐标网格的数据。copy
:指定是否复制输入数据,默认为True。sparse
:指定是否生成稀疏网格,默认为False。如果设置为True,则返回稀疏矩阵。indexing
:指定生成坐标网格的索引方式,默认为'xy',表示从水平轴和垂直轴生成坐标。在Matplotlib库中,contourf()
函数用于绘制填充的等高线图。等高线图是一种显示三维曲面的方
法,通过使用等高线来表示不同高度的区域。
contourf()
函数的语法如下:
contourf(X, Y, Z, levels=None, **kwargs)
参数说明:
X
:二维数组或网格的x坐标。Y
:二维数组或网格的y坐标。Z
:二维数据数组,表示曲面的高度或函数值。levels
:指定等高线的高度,默认为None,表示自动计算等高线的高度。除了上述参数之外,contourf()
函数还可以接受一系列可选的参数,用于控制等高线的外观,例如
颜色、线型等。