|
目录
|
|
Matplotlib等高线图 |
来源:C语言中文网 |
156 次浏览 |
3次 |
|
|
等高线图(也称“水平图”)是一种在二维平面上显示 3D 图像的方法。等高线有时也被称为 “Z 切片”,如果您想要查看因变量 Z 与自变量 X、Y 之间的函数图像变化(即 Z=f(X,Y)),那么采用等高线图最为直观。
自变量 X 和 Y 需要被限制在矩形网格内,您可以将 x 、y 数组作为参数传递给 numpy.meshgrid() 函数来构建一个网格点矩阵。
Matplotlib API 提供了绘制等高线(contour)与填充等高线( contourf)的函数。这两个函数都需要三个参数,分别是 X、Y 与 Z。
- import numpy as np
- import matplotlib.pyplot as plt
- xlist = np.linspace(-3.0, 3.0, 100)
- ylist = np.linspace(-3.0, 3.0, 100)
- X, Y = np.meshgrid(xlist, ylist)
- Z = np.sqrt(X**2 + Y**2)
- fig,ax=plt.subplots(1,1)
- cp = ax.contourf(X, Y, Z)
- fig.colorbar(cp)
- ax.set_title('Filled Contours Plot')
- ax.set_xlabel('x (cm)')
- ax.set_ylabel('y (cm)')
- plt.contour(X,Y,Z)
- plt.show()
|
代码执行后,输出结果如下:

图1:等高线示例图
左侧图像绘制了两个变量 X、Y ,右侧的颜色柱(colorbar)则表示 X 的取值,颜色越深表示值越小,中间深色部分的圆心点表示 x=0,y=0,z=0。 |
156 次浏览 |
3次 |
|
|
|