matplotlib中等高线图绘制:步骤、效果及相关函数应用
[id_[id_4[id_1968767097]2440005]560331196]

我们之前的文章介绍了 Numpy 中 meshgrid 函数的应用,还提到了等高线图的使用。
今天,我们要介绍 matplotlib 里等高线图的绘制方法。
先上图来看一下等高线图的绘制效果,是不是很炫啊。
我们接下来分步骤为大家介绍 matplotlib 中绘制等高线图(contour)的方法。
数据初始化
import matplotlib
import numpy as np
import matplotlib.cm as cm
import matplotlib.mlab as mlab
import matplotlib.pyplot as plt
%matplotlib inline
# 定义等高线高度函数
def f(x,[id_256134581]):
return (1 - x / 2 + x ** 5 + y ** 3) * np.exp(- x ** 2 - y ** 2)
# 数据数目
n = 256
# 定义x, y
x = np.linspace(-3, 3, n)
y = np.linspace(-3, 3, n)
# 生成网格数据
X, Y = np.meshgrid(x, y)
在数据初始化的过程里,使用到了 Numpy 的 meshgrid 函数。如果有同学对此感兴趣的话,可以去了解一下这个函数的使用方法,其链接如下:
仅绘制等高线
# 设置图像大小尺寸
plt.figure(figsize=(10,6))
# 填充等高线的颜色, 8是等高线分为几部分
plt.contour(X, Y,f(X, Y), 8,alpha = 0.75, cmap = plt.cm.hot)
结果如下:
仅填充等高区域颜色:
# 设置图像大小尺寸
plt.figure(figsize=(10,6))
# 填充等高区域的颜色, 8是等高线分为几部分
plt.contourf(X, Y,f(X, Y), 8, alpha = 0.75, cmap = plt.cm.hot)
结果如下:
绘制完整的等高线图
# 设置图像大小尺寸
plt.figure(figsize=(10,6))
# 填充等高线的颜色, 8是等高线分为几部分
plt.contourf(X, Y, f(X, Y), 8, alpha = 0.75, cmap = plt.cm.hot)
C = plt.contour(X,Y, f(X,Y), 8, colors='black', linewidth=8)
# 绘制等高线数据
plt.clabel(C, inline = True, fontsize = 10)
# 去除坐标轴
plt.xticks(())
plt.yticks(())
plt.show()
结果如下:
是不是很容易实现啊,赶快动手来试试吧。
End
精选文章(点击图片即可查看文章):
机器学习很枯燥,不想继续学了怎么办?或许,这些建议值得一看
公众号导航
ID:PyDataRoad