其他分享
首页 > 其他分享> > py绘制等高线图

py绘制等高线图

作者:互联网

0.引言

大家好,我是执念斩长河,一个个刚刚学习绘图的python渣渣。今天学习了等高线图绘制。特此写博文纪念一下。

1.等高线函数使用

contour([X,Y,]Z,[levels,]**kwargs)

该函数常用参数的含义如下:

  1. X,Y:表示坐标点的网格数据
  2. Z:表示坐标点对应的高度数据
  3. levels:表示等高线的数量,若levels为n,则说明绘制n+1条等高线
  4. colors:表示不同高度的等高线颜色
  5. cmap:表示颜色映射表
  6. linewidths:表示等高线的宽度
  7. linestyle:表示等高线的线型

2.示例:生成一组位于-2–2之间的样本数据,计算处等高线高度,绘制并填充等高线图

实验效果
在这里插入图片描述

import numpy as np
import matplotlib.pyplot as plt
# 计算高度
def calcu_elevation(x1, y1):
    h = (1-x1/2 + x1**5 + y1**3) * np.exp(-x1**2-y1**2)
    return h
n = 256
x = np.linspace(-2,2,n)
y = np.linspace(-2,2,n)
# 利用meshgrid()函数生成网格数据
x_grid,y_grid = np.meshgrid(x,y)
fig = plt.figure()
ax = fig.add_subplot(111)
# 绘制等高线
con = ax.contour(x_grid,y_grid,calcu_elevation(x_grid,y_grid),8,colors='black')
# 填充等高线的颜色
ax.contourf(x_grid, y_grid, calcu_elevation(x_grid,y_grid),8,alpha=0.75,cmap=plt.cm.copper)
# 为等高线添加文字标签
ax.clabel(con,inline=True,fmt='%1.1f',fontsize=10)
ax.set_xticks([])
ax.set_yticks([])
plt.show()

标签:plt,py,np,grid,等高线,等高线图,ax,x1,绘制
来源: https://blog.csdn.net/m0_37149062/article/details/120378840