-
先观察效果
-
导入支持包
import matplotlib.pyplot as plt import numpy as np
-
定义生成高度的函数
f(x,y)
def f(x,y): # 生成高度(等高线的‘高’)的函数 return (1 - x / 2 + x**5 + y**3) * np.exp(-x**2 -y**2)
-
生成测试数据
n = 256 x = np.linspace(-3, 3, n) y = np.linspace(-3, 3, n) X,Y = np.meshgrid(x, y)
-
绘制高度颜色图
# use plt.contourf to filling contours # X, Y and value for (X,Y) point plt.contourf(X, Y, f(X, Y), 30, alpha=.9, cmap=plt.get_cmap('rainbow')) # 30这个数字值可以理解为图中颜色跨度 # alpha 透明度 # cmap pyplot下的color map,取值可参见https://matplotlib.org/examples/color/colormaps_reference.html
此时出图的话是这样的
-
绘制等高线
扫描二维码关注公众号,回复: 9252799 查看本文章# use plt.contour to add contour lines C = plt.contour(X, Y, f(X, Y), levels=8, colors='black', alpha=.7) # colors 等高线的颜色 # levels 等高线的密度(越大越密) # alpha 登高线的不透明度,[0,1],越大越不透明
-
在等高线上添加高度标注
plt.clabel(C, inline=True, fontsize=10) # inline 是否把lable嵌入在线内 # fontzise 标注字大小 # color 标注字颜色 # inline_spacing : float
-
隐藏轴上的刻度
# 隐藏轴上的刻度 plt.xticks(()) plt.yticks(())
-
出图
plt.show()
效果如文首图所示
-
说明
按顺序复制程序即可执行
-
参考文献
程序主要出自 Contours 等高线图,略有改动
Matplotlib绘制等高线图
猜你喜欢
转载自blog.csdn.net/BBJG_001/article/details/104387549
今日推荐
周排行