我正试图使用seaborn绘制核密度估计(KDE)图并定位中位数。 代码大致如下:
import seaborn as sns
import numpy as np
import matplotlib.pyplot as plt
sns.set_palette("hls", 1)
data = np.random.randn(30)
sns.kdeplot(data, shade=True)
# x_median, y_median = magic_function()
# plt.vlines(x_median, 0, y_median)
plt.show()
正如您所看到的,我需要一个magic_function()
来从kdeplot
中获取中位数x和y值。然后我想用例如vlines
绘制它们。但是,我无法弄清楚如何做到这一点。结果应该看起来像这样(显然,这里的黑色中位数条是错误的):
我想我的问题不仅仅与seaborn有关,也适用于其他类型的matplotlib图。非常感谢任何想法。
np.median(data)
? - mwaskom