如何在 matplotlib 中创建等高线图
等值线图是一种绘图类型,它允许我们使用等值线在二维中可视化三维数据。
您可以使用以下两个函数在 Matplotlib 中创建等高线图:
- matplotlib.pyplot.contour() – 创建等高线图。
- matplotlib.pyplot.contourf() – 创建填充等高线图。
下面的例子展示了如何在实践中使用这两个函数。
示例 1:Matplotlib 中的等高线图
假设我们在Python中有以下数据:
import numpy as np x = np.linspace(0, 5, 50) y = np.linspace(0, 5, 40) X, Y = np.meshgrid(x, y) Z = np.sin(X*2+Y)*3 + np.cos(Y+5)
我们可以使用以下代码为数据创建等值线图:
import matplotlib.pyplot as plt plt. outline (X, Y, Z, colors=' black ')
当绘图仅使用一种颜色时,虚线代表负值,实线代表正值。
另一种方法是使用cmap参数指定颜色图。我们还可以使用级别参数指定要在图中使用的更多线条:
plt. contour (X, Y, Z, levels= 30 , cmap=' Reds ')
我们选择使用“Reds”cmap,但您可以在Matplotlib 文档页面上找到调色板选项的完整列表。
示例 2:Matplotlib 中的填充等高线图
填充轮廓路径与轮廓路径类似,不同之处在于填充了线条之间的空间。
以下代码展示了如何使用contourf()函数为上一示例中使用的相同数据创建填充等高线图:
plt. contourf (X, Y, Z, cmap=' Reds ')
我们还可以使用colorbar()函数在绘图旁边添加带标签的颜色条:
plt. contourf (X, Y, Z, cmap=' Reds ') plt. colorbar ()
您可以在此处找到更多 Matplotlib 教程。