欢迎访问宙启技术站
智能推送

通过get_cmap()函数在matplotlib中实现绘制等高线图

发布时间:2023-12-23 08:32:39

在matplotlib中,可以使用get_cmap()函数来获取一组颜色映射。颜色映射是一种将数值映射到颜色的方法,它可以用于绘制等高线图,使不同数值对应于不同的颜色。

下面是一个使用get_cmap()函数绘制等高线图的示例:

import matplotlib.pyplot as plt
import numpy as np

# 生成坐标数据
x = np.linspace(-5, 5, 100)
y = np.linspace(-5, 5, 100)
X, Y = np.meshgrid(x, y)

# 计算Z值
Z = np.sin(np.sqrt(X**2 + Y**2))

# 创建子图
fig, ax = plt.subplots()

# 绘制等高线图
cmap = plt.get_cmap('coolwarm')  # 获取颜色映射
contour = ax.contourf(X, Y, Z, levels=20, cmap=cmap)  # 绘制等高线图
colorbar = plt.colorbar(contour)  # 添加颜色条

# 设置标题和标签
ax.set_title("Contour Plot with Colorbar")
ax.set_xlabel("X")
ax.set_ylabel("Y")

# 显示图形
plt.show()

在这个例子中,我们首先使用np.linspace()函数生成一个长度为100的等差数列作为x和y坐标轴的值。然后使用np.meshgrid()函数将x和y坐标轴的值扩展成网格状的坐标数据。接下来,根据坐标数据计算出Z值,Z值是通过计算x和y的平方和的平方根的正弦函数得到的。

然后,我们创建一个子图,并使用get_cmap()函数获取名为'coolwarm'的颜色映射。接着,使用ax.contourf()函数绘制等高线图,其中levels参数指定了等高线的数量,cmap参数指定了使用的颜色映射。最后,使用plt.colorbar()函数添加颜色条,显示颜色映射中不同颜色对应的数值范围。

最后,我们设置图形的标题和标签,然后调用plt.show()函数显示图形。

通过使用get_cmap()函数可以方便地根据不同的需求获取不同的颜色映射,从而使得绘制的等高线图更加直观和美观。在实际使用中,可以根据具体的数据和需求选择合适的颜色映射来呈现不同的信息。