如何在 Matplotlib 中制作地毯图?
地毯图用于可视化数据分布。它在一个坐标轴上显示一个变量的数据点。要在 Matplotlib 中构建地毯图,我们可以执行以下步骤:
- 设置图形大小并调整子图之间的填充和周围的填充。
- 使用 Numpy 创建 x 数据点。
- 添加使用高斯核心的核密度估计的表示,kde1 和 kde2。
- 使用 figure() 方法创建新图形或激活现有图形。
- 将“ax1”添加为子图排列的一部分到该图形。
- 绘制地毯图,marker_size=20。
- 使用 plot() 方法绘制 x_eval、kde1(x_eval) 和 kde2(x_eval) 数据点。
- 在图形上放置图例。
- 要显示图形,请使用 show() 方法。
示例
import numpy as np from scipy import stats import matplotlib.pyplot as plt plt.rcParams["figure.figsize"] = [7.00, 3.50] plt.rcParams["figure.autolayout"] = True x = np.array([-6, -4, 2, 1, 4], dtype=np.float) kde1 = stats.gaussian_kde(x) kde2 = stats.gaussian_kde(x, bw_method='silverman') fig = plt.figure() ax = fig.add_subplot(111) ax.plot(x, np.zeros(x.shape), 'b+', ms=20) x_eval = np.linspace(-5, 5, num=10) ax.plot(x_eval, kde1(x_eval), 'k-', label="Scott's Rule") ax.plot(x_eval, kde2(x_eval), 'r-', label="Silverman's Rule") plt.legend(loc='upper right') plt.show()
输出
将产生以下输出
广告