向上移动distplot

时间:2019-11-19 03:59:35

标签: python seaborn

我有一个用seaborn创建的分布图,我想将其向上移动,以便可以在同一图中以不同高度绘制倍数。重要的是它们不能重叠,而在同一图中位于不同的高度。

我的代码是:

sns.distplot(x, color="red", hist=False)
l1 = ax.lines[0]
x1 = l1.get_xydata()[:,0]
y1 = l1.get_xydata()[:,1]
ax.fill_between(x1,y1, color="red")

是否有办法将其调高?例如,零线位于y = 1而不是y = 0?无法找到一种方法,也许还有另一种方法不涉及distplot,但我只是不知道。谢谢!

1 个答案:

答案 0 :(得分:1)

喜欢吗?

dists = [np.random.normal(loc=i, size=(1000,)) for i in range(5)]

fig, (ax1, ax2) = plt.subplots(1,2)
for d,y0 in zip(dists,np.arange(5)*0.1+0.1):
    sns.distplot(d, hist=False, ax=ax1)
    sns.distplot(d, hist=False, ax=ax2)
    l = ax2.lines[-1]
    l.set_ydata(l.get_ydata()+y0)
ax1.set_ylim(0,1)
ax2.set_ylim(0,1)

enter image description here