Python 如何使用seaborn显示从KDE绘图中获取数据点

Python 如何使用seaborn显示从KDE绘图中获取数据点,python,pandas,numpy,seaborn,data-visualization,Python,Pandas,Numpy,Seaborn,Data Visualization,我使用Python3.8.6和seaborn 0.11.1在jupyter笔记本上绘制一个带有两个类别的数字列,但我无法从显示中获取数据 最初的目标是用我的脚本识别分布图峰值(x_max)。我尝试了ax.get_lines()[0].get_data()和ax.lines()[0].get_data(),但显然lines()和get_lines()都不是Facetgrid对象的有效属性调用 将numpy导入为np 作为pd进口熊猫 将matplotlib.pyplot作为plt导入 导入seab

我使用Python3.8.6和seaborn 0.11.1在jupyter笔记本上绘制一个带有两个类别的数字列,但我无法从显示中获取数据

最初的目标是用我的脚本识别分布图峰值(x_max)。我尝试了ax.get_lines()[0].get_data()和ax.lines()[0].get_data(),但显然lines()和get_lines()都不是Facetgrid对象的有效属性调用

将numpy导入为np
作为pd进口熊猫
将matplotlib.pyplot作为plt导入
导入seaborn作为sns
my_data=np.random.randn(1000)+np.random.randn(1000)+np.random.randn(1000)
dfx=pd.DataFrame(my_数据,列=['my_数据']))
dfx['my_category']=“第二类”
dfx.loc[0:500,“我的类别”]=“第一类”
ax=sns.dislot(data=dfx,x=“我的数据”,hue=“我的类别”,kind=“kde”)
data_x,data_y=ax.get_line()[0]。get_data()
我得到以下错误:

---------------------------------------------------------------------------
属性错误
回溯(最近一次呼叫最后一次)
在里面
10
11 ax=sns.dislot(data=df,x=“我的列”,hue=“我的类别”,kind=“kde”)
---->12 data_x,data_y=ax.get_line()[0]。get_data()
AttributeError:“FaceGrid”对象没有属性“get\u lines”

sns.displaot
是一个图形级功能。它创建一个由一个或多个子地块组成的网格,这就是为什么它被写为
g=sns.displaot(…)
。轴级功能是ax=sns.kdeplot(..)。使用
g=sns.displaot(…)
,您可以使用
ax=g.axes[0,0]
提取曲线。非常感谢!它起作用了