Я развернул регистратор данных для мониторинга состояния с помощью микроконтроллера Arduino. Это дополнительно связано с Raspberry Pi, чтобы использовать данные для визуализации. До сих пор мне удавалось собирать данные в базу данных SQLite.
Я планирую поместить скрипт Python, чтобы помещать последние 50 показаний в файл json с постоянными интервалами и извлекать json из javscript для создания диаграммы.
Есть ли лучший способ сделать то же самое?
Спасибо. Этого вполне достаточно для работы.
Единственное, что я не могу понять, это обновление данных. Насколько я знаю, мне нужно поместить функцию в метод setInterval для получения данных. Я не знаю, как эта функция будет работать в JavaScript и во фляге.
Какой именно метод setInterval вы имеете в виду? Если ваши данные автоматически вставляются в базу данных, вы можете просто вывести последние 50 записей. В зависимости от дизайна вашей базы данных вы должны сделать что-то вроде сортировки вашего выбора по убыванию и ограничения вывода до 50. Это всегда должно отображать самые новые данные. Затем вам просто нужно перезагрузить веб-страницу, чтобы получить обновленные данные.
Я хотел, чтобы график обновлялся автоматически без перезагрузки пользователя. Для этого я хотел использовать setInterval в JavaScript страницы, которая могла бы запускать какую-то функцию для обновления данных.
Вы можете просто сделать это, добавив обновление в заголовок html. С помощью flask вы можете сделать это, добавив ' http-equiv = "refresh" content = "5" ' внутри вашего метатега, как объясняет этот ответ: stackoverflow.com/questions/45666664/… Обновлено: но это перезагрузит страницу (без взаимодействия с пользователем). Если вы не хотите полностью избежать перезагрузки, вам нужно будет написать динамическое веб-приложение.
@SerAlejo Спасибо. Приложение Chart.js и flask действительно сработало. Работа с json была немного сложной, я понял, что есть массив json и объект json, которые нужно обрабатывать по-разному. Но в целом решение сработало. Тем не менее, я не решаюсь обновить html, так как он будет иметь в общей сложности 6 диаграмм, а повторное обновление — это большая работа для raspberry pi, поэтому я намерен использовать jQuery для отправки новых данных.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вы можете создать небольшое фляжное приложение, подобное этому: pythonspot.com/фласк-и-великолепные-диаграммы-использование-диаграммы-js Внутри этого приложения вы можете напрямую подключиться к своей базе данных и получить последние 50 записей. Таким образом, вам не нужно иметь дело с дополнительным файлом json.