Matplotlib 等值线图
在此演示中,我们将了解什么是等高线图,以及如何借助 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()
输出:
使用 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 进行申请,经作者同意之后,转载请以链接形式注明出处
相关文章
Pandas DataFrame DataFrame.shift() 函数
发布时间:2024/04/24 浏览次数:133 分类:Python
-
DataFrame.shift() 函数是将 DataFrame 的索引按指定的周期数进行移位。
Python pandas.pivot_table() 函数
发布时间:2024/04/24 浏览次数:82 分类:Python
-
Python Pandas pivot_table()函数通过对数据进行汇总,避免了数据的重复。
Pandas read_csv()函数
发布时间:2024/04/24 浏览次数:254 分类:Python
-
Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。
Pandas 多列合并
发布时间:2024/04/24 浏览次数:628 分类:Python
-
本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。
Pandas loc vs iloc
发布时间:2024/04/24 浏览次数:837 分类:Python
-
本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。
在 Python 中将 Pandas 系列的日期时间转换为字符串
发布时间:2024/04/24 浏览次数:894 分类:Python
-
了解如何在 Python 中将 Pandas 系列日期时间转换为字符串