Наблюдатель данных в реальном времени не запускается после запроса комнатной базы данных

Вы можете использовать некоторую нелинейную зависимость ширины бункера, например

b  = 5
bins = (np.linspace(np.min(y)**b, np.max(y)**b))**(1/b)

fig, ax = plt.subplots()
ax.hist(y, bins=bins, edgecolor="k")

Или вы можете определить ячейки, полностью настроенные, например. используйте ширину бункера от 10 до 60, а затем используйте ширину бункера от 5 до 90, наконец, используйте бункер с 1 до 100.

bins = np.concatenate((np.linspace(0,60,7),
                       np.linspace(60,90,7),
                       np.linspace(90,100,11)))

fig, ax = plt.subplots()
ax.hist(y, bins=bins, edgecolor="k")

0
задан peresisUser 18 January 2019 в 20:14
поделиться

1 ответ

Таким образом, в основном сценарий использования был инициировать запрос LiveData после некоторого события - в данном случае намерение из BroadcastReceiver - поэтому он обновляется. Я хотел поставить новые параметры для запроса, а затем заставить запрос работать.

То, что я не понял, это то, что это в основном против дизайна LiveData. LiveData это данные, на которые вы подписываетесь, клиент, который подписывается на эти данные, не влияет на них, он просто слушает их изменения. Так что проблема здесь с дизайном.

Чтобы получить новый запрос, вам обычно нужны либо новые данные (чтобы ваши наблюдения сработали), либо повторная подписка на LiveData - более сложный и сложный подход, так как вам нужно управлять подписками, чтобы вы не делали не течь. Я решил получить новые данные с помощью вставки, как только я получу намерение. Если кто-то пожелает, я могу опубликовать фиксированный код для этого.

0
ответ дан peresisUser 18 January 2019 в 20:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: