我正在使用seaborn的kdeplot绘制我的数据分布。
sns.kdeplot(data['numbers'], shade=True)
我想将线下的阴影区域划分为三个部分,显示“高”百分位数和“低”百分位数。如果我可以用三种不同的颜色为阴影区域着色,那将是理想的。
我知道如何做到这一点吗?
我希望它看起来像下面我可以决定颜色之间的截止值。
答案 0 :(得分:4)
所以我想出了怎么做。我将从seaborn图中检索x和y数组,然后使用fill_between
在曲线下着色。
points = sns.kdeplot(data['numbers'], shade=True).get_lines()[0].get_data()
x = points[0]
y = points[1]
plt.fill_between(x,y, where = x >=0.75, color='r')
plt.fill_between(x,y, where = x <=0.1, color='g')
plt.fill_between(x,y, where = (x<=0.75) & (x>=0.1), color='y')