Как и конфигурация на стороне Laravel, вы должны включить «Менее безопасные приложения» в своей учетной записи Gmail.
На стороне Laravel это руководство показывает необходимые вам настройки. Используйте smtp.gmail.com
для хоста, а также 465/ssl
или 587/tls
.
Просто вычислите его и нормализуйте его до любого значения, которое вы хотите, затем используйте bar
для построения гистограммы.
На боковой ноте это нормализует такие вещи, что область всех баров normed_value
. Сырая сумма будет not быть normed_value
(хотя это легко сделать, если хотите).
Например
import numpy as np
import matplotlib.pyplot as plt
x = np.random.random(100)
normed_value = 2
hist, bins = np.histogram(x, bins=20, density=True)
widths = np.diff(bins)
hist *= normed_value
plt.bar(bins[:-1], hist, widths)
plt.show()
[/g2]
Итак, в этом случае, если бы мы должны были интегрировать (суммировать высоту, умноженную на ширину) бины, мы получим 2.0 вместо 1.0. (т. е. (hist * widths).sum()
даст 2.0
)
Вы можете передать аргумент weights
в hist
вместо использования normed
. Например, если ваши ящики покрывают интервал [minval, maxval]
, у вас есть n
корзины, и вы хотите нормализовать область до A
, то я думаю, что
weights = np.empty_like(x)
weights.fill(A * n / (maxval-minval) / x.size)
plt.hist(x, bins=n, range=(minval, maxval), weights=weights)
должен сделать трюк.
EDIT: Аргумент weights
должен быть того же размера, что и x
, и его эффект заключается в том, чтобы каждое значение в x вносило соответствующее значение в weights
в сторону подсчета bin, а не 1 .
Я думаю, что функция hist
могла бы, вероятно, сделать с большей способностью контролировать нормализацию. Например, я считаю, что значения, выходящие за пределы двоимого диапазона, игнорируются при нормализации, что обычно не является тем, что вы хотите.