вертикальная линия в среднем данных на графике распределения - PullRequest
0 голосов
/ 25 февраля 2020

Я пытаюсь создать график распределения с вертикальной линией, которая обозначает среднее значение моих данных, но когда я делаю следующее, он возвращает ошибку со следующей легендой:

IndexError: только целые числа, Срезы (:), многоточие (...), numpy .newaxis (None) и целые или логические массивы являются допустимыми индексами

import seaborn as sns, numpy as np

from scipy import stats
import matplotlib.pyplot as plt

sns.set(); np.random.seed(0)
x = np.random.randn(5000)
ax = sns.distplot(x, kde = False)

kde = stats.gaussian_kde(x) # Compute the Gaussian KDE
idx = np.mean(x) # Get the index of the maximum
plt.axvline(x[idx], color='red') # Plot a vertical line at corresponding x

1 Ответ

2 голосов
/ 25 февраля 2020

Полагаю, вам нужно:

plt.axvline(np.mean(x), color='red')

np.mean не возвращает индекс, но фактическое среднее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...