如何在 Matplotlib 中绘制轮廓和对数颜色刻度?
matplotlibpythondata visualization
要在 Matplotlib 中绘制轮廓和对数刻度,我们可以采取以下步骤 −
- 设置图形大小并调整子图之间和周围的填充。
- 初始化变量 N,用于样本数据的数量。
- 使用 numpy 创建 x、y、X、Y、Z1、Z2 和 z 数据点。
- 创建一个图形和一组子图。
- 使用 contourf() 方法绘制轮廓。
- 为标量可映射实例创建颜色条。
- 要显示图形,请使用 show() 方法。
示例
import matplotlib.pyplot as plt import numpy as np from numpy import ma from matplotlib import ticker, cm plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True N = 100 x = np.linspace(-3.0, 3.0, N) y = np.linspace(-2.0, 2.0, N) X, Y = np.meshgrid(x, y) Z1 = np.exp(-X**2 - Y**2) Z2 = np.exp(-(X * 10)**2 - (Y * 10)**2) z = Z1 + 50 * Z2 z[:5, :5] = -1 z = ma.masked_where(z <= 0, z) fig, ax = plt.subplots() cs = ax.contourf(X, Y, z, locator=ticker.LogLocator(), cmap=cm.PuBu_r) cbar = fig.colorbar(cs) plt.show()