等高线图是地理领域之中一种用来表示不同位置地形高低差异的图表,大家在之前的学习之中肯定也或多或少的对其有一些接触和了解。那么知其型而不知其意就无法真正的了解它,下文会带来使用matplotlib绘制等高线图的详细代码和解析,感兴趣的和想学习的话就继续阅读文章吧。
1.本次绘图需要使用到三个模块,分别为numpy、cm以及pyplot,其中cm就是用来将等高线图不同的线条使用同源但是层次不同的颜色给绘制出来,导入模块的代码如下:
import numpy as np import matplotlib.cm as cm import matplotlib.pyplot as plt
2.模块导入好之后就是要来准备绘图所需要的数据了,首先定义一个变量并赋值0.025作为随机数据生成的指数,然后调用arange()方法来分别生成出x轴以及y轴坐标所需要的数据数组,代码如下所示:
delta = 0.025 x = np.arange(-3.0, 3.0, delta) y = np.arange(-2.0, 2.0, delta)
3.然后再调用meshgrid()函数并传入xy轴坐标数据来生成二维网格矩阵,然后用该网格矩阵数据来得到三个数据,这三个数据就是最后会用来生成图像上登高线的。所以需要用其去调用exp()方法才可以得到一个能成圆形的曲线函数,代码如下:
X, Y = np.meshgrid(x, y) Z1 = np.exp(-X**2 - Y**2) Z2 = np.exp(-(X - 1)**2 - (Y - 1)**2) Z = (Z1 - Z2) * 2
4.最后就是用subplots()方法创建出显示图像的窗口以及子图对象,然后用子图对象调用contour()方法来绘制出等高线图,然后再去设置一下中间划分线条的样式并显示图像即可,详细代码如下所示:
fig, ax = plt.subplots() CS = ax.contour(X, Y, Z) ax.clabel(CS, inline=True, fontsize=10) ax.set_title('DGX') plt.show()
以上就是关于“Python画等高线的代码是什么?Python怎么绘制等高线图”的全部内容了,希望对你有所帮助。