gpt4 book ai didi

matplotlib - 制作带有为每个点指定的标准偏差/置信区间的 seaborn 线图

转载 作者:行者123 更新时间:2023-12-03 16:12:35 29 4
gpt4 key购买 nike

我正在尝试制作具有平滑置信区间的线图。看起来像这样的东西:

example

目前,我所做的是使用误差条来显示置信区间。所以我有 100 个 (x,y) 对,我将它传递给 sns.lineplot这为我创建了一条线,然后这些点中的每一个,我都有我想要绘制的标准偏差 Sigma_new_vec .

axs[(e-1)//2, (e-1)%2].errorbar(x, y ,yerr = Sigma_new_vec, linestyle="None")
sns.lineplot(x='x', y='y', data = predicted_line, ax= axs[(e-1)//2, (e-1)%])
sns.lineplot(x='x', y='y', data = true_line, ax = axs[(e-1)//2, (e-1)%2] )

所以目前我所拥有的看起来像这样,我对 100 点中的每一个都有置信区间,但我希望它变得平滑。
my example

最佳答案

@ImportanceOfBeingErnest's建议,我让它工作!

lower_bound = [M_new - Sigma for M_new, Sigma in zip(M_new_vec, Sigma_new_vec)]
upper_bound = [M_new + Sigma for M_new, Sigma in zip(M_new_vec, Sigma_new_vec)]
plt.fill_between(x_axis, lower_bound, upper_bound, alpha=.3)
如果 numpy 可用:
import numpy as np
import matplotlib.pyplot as plt

M_new_vec = np.array(M_new_vec)
Sigma_new_vec = np.array(Sigma_new_vec)

lower_bound = M_new_vec - Sigma_new_vec
upper_bound = M_new_vec + Sigma_new_vec

plt.fill_between(x_axis, lower_bound, upper_bound, alpha=.3)
enter image description here

关于matplotlib - 制作带有为每个点指定的标准偏差/置信区间的 seaborn 线图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58399030/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com