0

我正在尝试使用 seaborn 绘制直方图。对于密度曲线或简单的直方图,它很简单 kde=True 或 false。我想要的是能够简单地做类似的事情

plt.subplots(figsize=(8,8))
ax2 = sns.distplot(data.length, hist=True, position=0)
ax = sns.distplot(data.length, kde=True)
plt.show()

但是以某种方式获得左侧密度曲线的 y 标签和右侧的直方图标签值。我一直在尝试这样做一个多小时,但无法弄清楚如何做一些应该如此简单的事情。你能帮我么?谢谢!

4

1 回答 1

0

您需要创建一个双 Axes。鉴于此,您必须调用绘图函数两次:一次用于直方图,另一次用于 kde。

fig, ax1 = plt.subplots()
ax2 = ax1.twinx()

ax1.hist(...)
sns.kdeplot(..., ax=ax2)

无需使用distplot,因为您必须分别绘制直方图和 kde。

于 2020-04-15T05:50:15.553 回答