如何填充 Seaborn 分布图中曲线下的区域?

matplotlibpythondata visualization更新于 2025/9/12 1:16:17

要填充 Seaborn 分布图中曲线下的区域,我们可以使用 distplot() 和 fill_between() 方法。

步骤

  • 设置图形大小并调整子图之间和周围的填充。
  • 创建数据点列表。
  • 绘制观测值的单变量分布。
  • 要填充曲线下的区域,请使用 fill_between()  方法。
  • 设置或检索自动缩放边距,x=0 和 y=0。
  • 要显示图形,请使用 show() 方法。

示例

import seaborn as sns
import scipy.stats as stats
import matplotlib.pyplot as plt

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

x = [2.0, 7.5, 9.0, 8.5]
ax = sns.distplot(x, fit_kws={"color": "red"}, kde=False, fit=stats.gamma, hist=None, label="label 1")
l1 = ax.lines[0]

x1 = l1.get_xydata()[:, 0]
y1 = l1.get_xydata()[:, 1]

ax.fill_between(x1, y1, color="red", alpha=0.3)
ax.margins(x=0, y=0)

plt.show()

输出


相关文章


有用资源