迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

Matplotlib 等值线图

作者:迹忆客 最近更新:2023/05/02 浏览次数:

在此演示中,我们将了解什么是等高线图,以及如何借助 Matplotlib 中的 contour() 方法获取等高线图。


在 Matplotlib 中使用 contour() 方法获取等高线图

等高线图有一种在二维平面上显示三维表面的方法。 它将两个预测变量 x 和 y 绘制在 y 轴上,响应变量 z 绘制为等高线。

二维等值线图是取决于两个变量的标量场的等值线。 让我们离散化每个轴中的变量。

我们将从离散化的 x 组件开始,我们可以在 numpy.linspace() 的帮助下创建它。然后,我们导入 numpy。

我们希望 x 在 -2 到 2 之间线性间隔 500 个值。 对于 y,我们也想这样做。

import matplotlib.pyplot as plot
import numpy as np

x=np.linspace(-2,2,500)
y=np.linspace(-2,2,500)

我们可以使用 np.meshgrid() 方法创建一个二维网格,它将以大写 x 和大写 y 保存。 然后我们可以使用 x 的 sin 和 y 的 cos 来评估我们的标量场。

x,y=np.meshgrid(x,y)
z=np.sin(x) + np.cos(y)

等高线图是使用 contour() 方法创建的,并接受三个参数。 我们看到函数的等值线和颜色键。

对于该位置标量场的值,我们可以使用 plot.colorbar() 激活色标,以获取有关用特定颜色指示哪个值的信息。

plot.contour(x,y,z)
plot.colorbar()
Full Source Code:

import matplotlib.pyplot as plot
import numpy as np

x=np.linspace(-2,2,500)
y=np.linspace(-2,2,500)
x,y=np.meshgrid(x,y)
z=np.sin(x) + np.cos(y)

plot.contour(x,y,z)
plot.colorbar()
plot.show()

输出:

使用等高线方法获得等高线图


使用 Matplotlib 中的 contourf() 方法

另一种称为 contourf() 的方法创建等高线图,但中间区域会填充相应的颜色值。

代码:

import matplotlib.pyplot as plot
import numpy as np

x=np.linspace(-2,2,500)
y=np.linspace(-2,2,500)
x,y=np.meshgrid(x,y)
z=np.sin(x) + np.cos(y)

plot.contourf(x,y,z)
plot.colorbar()
plot.show()

输出:

在 matplotlib 中使用 contourf() 方法

使用 levels 参数,我们可以更改级别数。 级别是等值线的数量。

例如,让我们创建 30 条等值线,然后看到过渡更加平滑。 我们也可以手动选择我们想要哪个值到哪个值的等值线,例如,vmin 为 -1,vmax 为 0.5。

当我们运行下面的代码时,我们无法用等值线覆盖黄色区域,因为它的值太高了。

代码:

import matplotlib.pyplot as plot
import numpy as np

x=np.linspace(-2,2,500)
y=np.linspace(-2,2,500)
x,y=np.meshgrid(x,y)
z=np.sin(x) + np.cos(y)

plot.contourf(x,y,z,levels=30,vmin=-1,vmax=0.5)
plot.colorbar()
plot.show()

输出:

更改级别数并手动选择要具有等值线的值

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:https://www.jiyik.com/tm/xwzj/prolan_6048.html

相关文章

Pandas read_csv()函数

发布时间:2024/04/24 浏览次数:254 分类:Python

Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。

Pandas 追加数据到 CSV 中

发布时间:2024/04/24 浏览次数:352 分类:Python

本教程演示了如何在追加模式下使用 to_csv()向现有的 CSV 文件添加数据。

Pandas 多列合并

发布时间:2024/04/24 浏览次数:628 分类:Python

本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。

Pandas loc vs iloc

发布时间:2024/04/24 浏览次数:837 分类:Python

本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便