Próbuję zrobić Kernel Density Estimation (KDE) plot z seaborn i zlokalizować medianę. Kod wygląda mniej więcej tak:Jak zlokalizować medianę na działce KDE (seaborn)?
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()
Jak widać muszę magic_function()
sprowadzić medianę wartości X i Y od kdeplot
. Następnie chciałbym wykreślić je za pomocą np. vlines
. Jednak nie mogę wymyślić, jak to zrobić. Wynik powinien wyglądać mniej więcej tak (oczywiście czarny mediana pasek jest źle tutaj):
Chyba moje pytanie nie jest ściśle związany z Seaborn i odnosi się także do innych rodzajów działek matplotlib. Wszelkie pomysły są bardzo cenne.
Jestem nieco zdezorientowany twoim celem. Dlaczego nie tworzysz tylko 'np.median (danych)'? – mwaskom
@mwaskom: Myślę, że próbowałem tego. ale mediana KDE niekoniecznie pokrywa się z medianą danych. A jaka byłaby wartość y? – n1000